【发布时间】:2015-09-16 08:18:05
【问题描述】:
假设 Eclipse src/{main,test}/{java,resources} 中有一个典型的 maven 项目。
现在在src/main/java 的一个类中,我可以看到并针对src/test/java 中的类进行编译——这当然是错误的和不希望的。
第二个问题是,src/test/java 中的类与 src/main/java 中的类相同会导致资源重复错误,尽管这与 mvn test 编译得很好(并且是故意的)。
如何调整我的 Eclipse 以便正确编译测试类并在正常源代码中隐藏测试类?
【问题讨论】:
-
为什么不为您的测试创建一个单独的项目?你也可以在你的测试类名称后面加上
Test,这样就不会混淆 -
你在
src/test/java中是否真的有与src/main/java´. I have usually a implementation insrc/main/java` 中相同的类以及在src/test/java中的适当测试,其名称类似于WhatEverTest.java´ ...insrc/main/java ` 我从来没有过名为WhatEverTest.java的课程......此外,如果您可以在src/main/java中从src/test/java访问课程,我会感到惊讶您能制作一个此类案例的示例项目吗?此外,如果您在 Eclipse 中,这是一个不同的世界.. -
@flafoux 单独的项目会使 Maven 设置中的项目数量增加一倍。
-
@khmarbaise 是的,当前项目使用这个概念来模拟静态单例进行测试——这是一个可讨论的架构。但适用于 NetBeans 和 maven。 eclipse 中的任何项目都是这样工作的:(