我有许多不同的scala文件,每个文件都定义了自己的类。所有文件都位于SAME目录中。我的理解是,如果它们位于同一目录中,您不必担心包或导入。但是我正在尝试编译文件而我收到not found
错误。
使用不同文件中的类和对象之间是否存在差异,有人可以解释如何执行此操作吗?
答案 0 :(得分:4)
检查您的文件是否全部在同一个package
。
Scala打破了Java约定,文件夹结构需要表示包结构。 因此,当您将文件包装错误时,您将不会得到任何反馈和/或自动警告。
在给定示例中,文件位于相同文件夹中,但属于不同的包。
src/main/scala/biz/neumann/foo.scala
package biz.neumann.not_in_example
class Foo
src/main/scala/biz/neumann/bar.scala
package biz.neumann.example
class Bar
biz .neumann .not_in_example .Foo
.example .Bar