IntelliJ多模块运行单元测试时抛出java.lang.ClassNotFoundException: IDEA
以下是针对「右键运行All Tests报错,但单模块测试、Maven命令运行正常,清缓存/删.idea/重装IDE无效」问题的可行方案:
检查JUnit运行配置模板
打开Run > Edit Configurations...,找到JUnit模板,确认Working directory设置为$MODULE_WORKING_DIR$。如果是固定全局路径,多模块运行时会出现资源路径冲突,修改后重新生成运行配置即可。强制同步Maven依赖
在Maven侧边栏点击左上角的「Reload All Maven Projects」按钮,等待依赖完全同步后再尝试运行所有测试。若同步过程中出现依赖冲突,优先解决冲突问题。验证模块间测试依赖配置
检查各模块pom.xml中,testscope的依赖是否正确引入。如果某模块测试代码依赖其他模块但未配置对应测试依赖,批量运行时会出现类找不到的报错。重置IDE与Maven的测试运行协调逻辑
进入File > Settings > Build, Execution, Deployment > Build Tools > Maven > Runner,勾选Delegate IDE build/run actions to Maven,运行一次所有测试后再取消勾选。这个操作可以重置IDE自身的测试运行器状态。检查测试类规范
确保所有测试类符合IntelliJ默认识别规则:类名以Test结尾,且位于src/test/java目录下。不符合规范的测试类可能在批量运行时引发加载异常。
内容的提问来源于stack exchange,提问作者Noboruu

