在寻求解决this不知何故that,我尝试创建包细分main
和test
类,然后利用编译器与添加的模块来执行单元测试。不是一个很好的方式,但现在只是一个假设的结构。警告:未知的枚举常量Status.STABLE
一些开放的问题,因为我还继续有: -
- 添加一个基于JDK9模块项目。
- 使用IntelliJ的快捷方式将JUnit5添加到类路径中。 (lib文件夹)[
junit-jupiter-api-5.0.0.jar
]
Q.注意,它沿着opentest4j-1.0.0.jar
到lib /文件夹带来的。为什么是这样,另一个罐子用于什么?
添加类并相应地生成一些测试方法。
编译sample project(共享刚刚绘制在使用中的目录结构的图像)使用命令
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
与- Java版本
"9" (build 9+181)
- 的IntelliJ
2017.2.5
问:什么可能是一个可能的原因是这样的 警告?此外,我无法在我的项目和项目类别之外找到API.Status
。
对不起,我删除了我的意见,因为我没有用的IntelliJ测试,那就是你问关于。我也无法在任何地方找到'org.apiguardian'软件包,所以我的猜测是它与intelliJ有关。 –
详情请参阅https://github.com/junit-team/junit5/issues/1065。 – Sormuras
@Sormuras感谢您的链接。虽然这可能会回答'org.apiguardian.api',但它仍然不清楚为什么包括junit-jupiter到classpath带来'opentest4j-1.0.0.jar'? – nullpointer