gpt4 book ai didi

java - 同一文件夹中的 Scala 导入类

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:39:10 33 4
gpt4 key购买 nike

我是 Scala 的初学者,有 Java 背景。我在两个文件中有两个单例对象定义,如下所示。

长线.scala

import scala.io.Source

object LongLines {

def processFile(filename: String, width: Int) {
val source = Source.fromFile(filename)
for (line <- source.getLines)
processLine(filename, width, line)
}

private def processLine(filename: String,
width: Int, line: String) {

if (line.length > width)
println(filename +": "+ line.trim)
}
}

FindLongLines.scala

object FindLongLines {
def main(args: Array[String]) {
val width = args(0).toInt
for (arg <- args.drop(1))
LongLines.processFile(arg, width)
}

我首先使用以下命令编译了 LongLines.scala

[root@vm test_longlines]# scalac LongLines.scala 
[root@vm test_longlines]# ls
FindLongLines.scala LongLines.class LongLines$.class LongLines.scala

现在,当我尝试使用以下命令运行时,我找不到“LongLines”的符号。

[root@vijayvm test_longlines]# scala -cp . FindLongLines.scala 10 LongLines.scala 
/home/scala/dev/test_longlines/FindLongLines.scala:5: error: not found: value LongLines
LongLines.processFile(arg, width)
^

发现一个错误

我应该在 FindLongLines.scala 中导入 LongLines 吗?两者都在同一个文件夹中,但我使用了包。

最佳答案

第一,你没有编译FindLongLines.scala吗?

第二,在 Scala 中,一个文件中可能有多个对象/类。对于命令行应用程序,将这么小的对象分成两个文件可能有点矫枉过正

关于java - 同一文件夹中的 Scala 导入类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36311958/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com