我想在Eclipse中使用JUnit 5在Java 9模块化项目上运行测试,没有Maven,Gradle或所有那些花哨的东西。所以我有src/main/java
路径,其中module-info.java和模块的包存在,而src/test/java
所有的测试类都在这里。在Jigsaw模块系统之前,照常进行业务。我有Eclipse Oxygen.3a(4.7.3a)和Java 10.0.1。
我看到Eclipse中的一些视频显示了如何将JUnit测试添加到模块化项目中,但这让我大吃一惊:他们将required
关键字放入模块的module-info.java中,将其绑定到JUnit模块。这实际上是否正确?
我也看到了所有这些--patch-module
/ --add-reads
解决方案(当我们谈论在控制台中工作时),看起来这是正确的方法,但我没有想法,如何在Eclipse 没有绑定模块的情况下实现对JUnit模块的测试。这在Eclipse中是否可行(没有Maven和s.o)?
答案 0 :(得分:0)
我也尝试解决了很长时间。我的方法是在src / main / java的源代码目录中添加一个过滤器,以过滤掉module-info.java。这允许在src / test / java中具有不同的module-info.java。它将被复制到输出文件夹。这样,您可以从IDE内运行单元测试,并将另一个用于最终构建。但是,您需要自己更新src / main / java中的内容。
右键单击项目>属性> Java构建路径>源
选择src / main / java条目,然后单击编辑>下一步>排除模式>添加