如何在Intellij中从另一个模块导入类

3

我正在尝试编写一个导入语句,以便在Intellij中的Java项目中访问另一个模块中的Scala类。

我找到了这个看似相关的问题:

Kotlin:如何从另一个IntelliJ模块导入类?

我已经按照分组和展开模块的步骤进行了操作,但是我找不到可用的导入语句。我没有使用Kotlin项目,所以可能这就是区别所在。

当我将Scala项目包含为jar依赖项(而不是作为单独的模块)时,我成功地得到了一个可用的导入语句;但是,这种方式会导致Intellij无法识别代码中特定于Scala的部分。我对在Intellij中构建Jar文件并不很熟悉,因此可能我构建不正确- 我习惯了Eclipse,那里的Jar文件只是一个Jar文件,你完成了。

以下是我正在尝试使用导入语句的行:

public class Display {
    public static Screen screen = new Screen(Resolution.FULL_SCREEN(), Screen.DEFAULT_SCALE());
}

依赖路径:

storm.screen/src/main/scala/Screen.scala

工作类的路径:

storm.core/src/output/Display.java

目前,我尝试的每个导入路径都会显示“无法解析符号”的错误消息。

编辑:我现在已经成功地从一个不同的Java项目模块中添加了一个模块依赖项——这里的问题似乎只限于Scala项目模块。

1个回答

1
我能够通过创建一个全新的maven项目,手动复制现有模块中的源文件,并按照this post中的步骤解决了这个问题。
奇怪的是,只要scala类在名为“java”的目录内,它们就可以正常工作,但如果将目录重命名为“scala”,导入就会出错。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接