为了解决这个问题,我试图创建包来细分main
和test
类,然后使用带有添加模块的编译器来执行单元测试。不是一个很好的同意方式,但现在只是一个假设的结构。
当我进一步进行时,很少有未解决的问题是:-
- 将基于 JDK9 的模块添加到项目中。
- 使用 IntelliJ 的快捷方式将 JUnit5 添加到类路径中。(lib 文件夹) [
junit-jupiter-api-5.0.0.jar
]
问:请注意,它会带入opentest4j-1.0.0.jar
lib/ 文件夹。为什么会这样,另一个罐子是做什么用的?
添加类并相应地生成一些测试方法。
使用命令编译示例工程(分享只是为了画一张使用中的目录结构)
javac --module-path lib -d "target" $(find src -name "*.java")
结果变成警告 -
warning: unknown enum constant Status.STABLE reason: class file for org.apiguardian.api.API$Status not found warning: unknown enum constant Status.STABLE 2 warnings
注意:-
我发现使用junit-jupiter
可疑,因为如果我使用 JUnit 注释掉代码并执行相同的命令,事情似乎工作正常。
如果可能的话,使用的库/工具:-
junit-jupiter-api-5.0.0
和- 爪哇版
"9" (build 9+181)
- 智能
2017.2.5
问:出现这种警告的可能原因是什么?此外,我也无法API.Status
在我的项目中和项目类之外找到。