【问题标题】:Add main/java classes to my test/java directory in intellij在 intellij 中将 main/java 类添加到我的 test/java 目录
【发布时间】:2014-01-15 15:29:45
【问题描述】:

我是 intellij 的新手。我正在从 eclispe Kepler 切换。

我没有 maven 项目,但我有一个 maven 目录结构。我的课程在 src/main/java 中,我的测试在 src/test/java 中。

我的单元测试在抱怨,因为它们无法从 src/main/java 中找到类。将它添加到构建路径以便我的单元测试可以找到源代码的正确方法是什么?

【问题讨论】:

  • 我不认为这是重复的,因为添加 junit jar 文件并没有解决这个问题。
  • 抱歉,我应该更仔细地阅读这个问题。
  • 测试和测试类的目录结构必须适合。以下是如何轻松做到这一点:*.com/a/36057080/715269

标签: java junit intellij-idea


【解决方案1】:
  • 右键单击“src/main/java”目录并选择“标记目录” as > Sources root"。
  • 右键单击“src/test/java”目录并选择“标记目录” as > 测试源根"

另外,请确保使用源文件夹下的包。

【讨论】:

  • @TheThom 好的,你在使用包吗?
  • 是的。原始类和单元测试都在同一个包中,尽管在不同的目录中。
  • IntelliJ 是否对它指示的哪些类在测试中出错有任何建议?
  • @NickHolt 不确定我是否关注您的问题。我找不到符号:类 ConnectHistory 位置 ConnectHistoryTest。我没有得到进一步的建议。我尝试使用 Ctrl+Alt+O 来查看它是否可以解决问题,但没有运气。
  • 在编译之前,如果您查看ConnectHistoryTest,IDE 将突出显示错误——我希望看到ConnectionHistory 的导入错误和使用它的错误。如果您将光标放在使用它的点上,IntelliJ 将建议一个要导入的类,或者如果没有明显的选择,则不建议导入 - 会发生这种情况吗?
【解决方案2】:

Jetbrains 将我带到这里:http://www.jetbrains.com/idea/webhelp/configuring-module-dependencies-and-libraries.html。我在测试模块下添加了 main/java 目录作为模块依赖项,一切都开始工作了。

【讨论】: