【发布时间】:2014-12-17 15:54:16
【问题描述】:
我有一个 gradle 项目;我在 scala.com.EssencePVP.models 中有一些 scala 类,我想将它们导入到我的 java 代码中,它具有相同的包名称。
结构看起来像这样:
src/main/java/com/EssencePVP/
src/main/scala/com/EssencePVP/models/
当我尝试将我的 scala 包 (import com.EssencePVP.models.*) 导入 java 时,我收到以下错误消息:
EssencePVPMod/build/sources/java/com/EssencePVP/EssencePVP.java:56:错误:com.EssencePVP.models 包不存在
显然问题是试图查看 java 目录,而不是 scala 目录。我该如何解决这个问题?
谢谢。
【问题讨论】:
-
请注意,导入与源文件所在的实际目录几乎没有任何关系——它们只是为了方便您不必编写完全限定名称(package. name.ClassName) 一直都是。您的问题不在于导入,而是在编译 Java 文件时在 javac 使用的类路径中添加由 scalac 编译的 .class 文件(来自 Scala 源文件)。您的项目是如何构建的?例如,您是否使用 SBT 或 Maven 之类的构建系统?
-
(忘记关于构建系统的问题——我应该读得更好。)