efJerryYang/AircraftWar

程序包org.junit.jupiter.params不存在

Closed this issue · 1 comments

问题表现:

执行预编译任务…
正在加载 Ant 配置…
正在运行 Ant 任务…
正在运行 'before' 任务
正在检查源
Searching for compilable files... [AircraftWar]
正在解析 java… [AircraftWar]
正在编写类… [AircraftWar]
正在检查依赖项… [AircraftWar]
依赖分析发现 0 个受影响的文件
正在更新依赖项信息… [AircraftWar]
正在添加 @NotNull 断言… [AircraftWar]
正在检测表单… [AircraftWar]
已完成检测表单 [AircraftWar]
正在添加模式断言… [AircraftWar]
正在添加线程模型断言… [AircraftWar]
Searching for compilable files... [AircraftWar 的测试]
正在解析 java… [AircraftWar 的测试]
正在检查依赖项… [AircraftWar 的测试]
依赖分析发现 0 个受影响的文件
编译模块 'AircraftWar 的测试' 时发生错误
javac 17.0.3 用于编译 java 源
已完成,正在保存缓存…
模块 'AircraftWar' 已经完全重新构建,因为项目配置/依赖项发生变更
编译失败: 错误: 30;警告: 0
执行后编译任务…
正在加载 Ant 配置…
正在运行 Ant 任务…
正在同步输出目录…
2022/5/7 00:23 - 编译完成4秒12毫秒中 30 个错误 和 0 个警告

// BossEnemy.java

D:\gits\AircraftWar-efJerryYang\test\edu\hitsz\aircraft\BossEnemyTest.java:8:32
java: 程序包org.junit.jupiter.params不存在
D:\gits\AircraftWar-efJerryYang\test\edu\hitsz\aircraft\BossEnemyTest.java:9:41
java: 程序包org.junit.jupiter.params.provider不存在
D:\gits\AircraftWar-efJerryYang\test\edu\hitsz\aircraft\BossEnemyTest.java:56:6
java: 找不到符号
  符号:   类 ParameterizedTest
  位置: 类 edu.hitsz.aircraft.BossEnemyTest
D:\gits\AircraftWar-efJerryYang\test\edu\hitsz\aircraft\BossEnemyTest.java:58:6
java: 找不到符号
  符号:   类 ValueSource
  位置: 类 edu.hitsz.aircraft.BossEnemyTest
D:\gits\AircraftWar-efJerryYang\test\edu\hitsz\aircraft\BossEnemyTest.java:87:6
java: 找不到符号
  符号:   类 ParameterizedTest
  位置: 类 edu.hitsz.aircraft.BossEnemyTest
D:\gits\AircraftWar-efJerryYang\test\edu\hitsz\aircraft\BossEnemyTest.java:89:6
java: 找不到符号
  符号:   类 ValueSource
  位置: 类 edu.hitsz.aircraft.BossEnemyTest

// 其他 Test 文件

环境:

  1. Windows 11; IntelliJ IDEA 2021.3.2 (Ultimate Edition)
  2. 已添加 lib/**/*.jar 添加到模块 AircraftWar
  3. JDK:zulu17.34.19-ca-jdk17.0.3-win_x64
  4. clone from: 8d4d003

如果打扰到你的话非常抱歉🙏游戏的各种机制非常有趣

十分抱歉,我没有仔细检查过test的依赖问题,目测可能我使用是JUnit5的原因。

一个直接的解决方案是移除整个test目录,这部分在实验3之后没有再更新过,并不完全和后来的逻辑相符,只是一直没有运行出错所以未作处理。或者你可以选择手动下载缺失的依赖项,并添加到项目dependency下,但我不能确保是否能解决问题。我之后会进行检查,但最近因为有别的ddl所以可能稍晚才能对test检查来处理这个issue。

除此以外,我刚刚注意到 8d4d003 上传的项目缺失了lib目录,相关文件仅在打包的release中包含了。这是我之前的缺漏,因为默认java项目.gitignore排除了.jar文件的原因,0cdc982 之后处理了这个问题。