JHipster项目IntelliJ打开pom.xml报插件依赖缺失 maven install测试失败
问题背景
- JHipster创建项目后,IntelliJ打开项目时pom.xml提示插件、依赖找不到,报错截图:

- 执行Maven生命周期命令验证结果:
mvn clean:执行成功mvn package:执行成功mvn install:执行失败,失败原因为测试环节不通过,失败截图:
- 已尝试的无效操作:
- Maven设置中配置plugin registry
- 执行Invalidate Caches清理IntelliJ缓存
- 切换多个JDK版本验证
- 环境信息:
- 操作系统:Windows 10
- JDK:11.0.15
- Node:16.15.1
- Git:2.36.1
解决步骤
修复pom.xml依赖/插件报红问题
这类问题基本都是IntelliJ Maven配置和项目要求不匹配、本地仓库异常导致,按顺序操作:
- 打开IntelliJ Maven配置页:
Settings > Build, Execution, Deployment > Build Tools > Maven- 不要使用IDEA内置的Bundled Maven,替换为本地安装的3.8.x及以上版本Maven(JHipster 7/8系列最低要求Maven 3.8,低版本会出现插件解析异常)
- 覆写User settings file配置,指向本地Maven的
settings.xml,确认文件内配置的Maven镜像源可用,移除已经停服的老旧镜像配置 - 覆写Local repository配置,指定到纯英文、无空格、无特殊字符的路径下,Windows环境如果系统用户名包含中文,必须修改本地仓库路径,否则会出现依赖解析失败
- 配置完成后点击Maven面板的
Reload All Maven Projects按钮重新拉取依赖。如果仍有个别依赖报红,进入本地仓库对应依赖的目录,删除所有后缀为.lastUpdated的损坏文件,再重新触发依赖拉取即可。
修复mvn install测试失败问题
clean、package阶段正常但install阶段测试失败,是JHipster项目的典型问题,和前端资源构建、测试上下文加载异常有关,按顺序排查:
- 确认执行Maven命令的终端在项目根目录,且能正常识别
node、npm命令,不要使用管理员权限启动终端执行Maven命令,避免权限不足导致前端静态资源生成失败。 - 先在项目根目录单独执行
npm install安装前端依赖,再执行npm run build验证前端构建流程是否正常,前端构建产出静态资源后,再执行mvn install即可解决因找不到静态资源导致的测试报错。 - 如果测试报错为Spring上下文加载失败,先执行
mvn install -DskipTests跳过测试环节,验证全流程打包是否正常。如果跳过测试后打包成功,说明问题出在测试环境配置:检查端口占用情况、确认Maven运行时使用的JDK版本和项目配置的JDK版本一致,不要混用多个JDK版本。 - 若仍存在JDK兼容性问题,可将JDK 11替换为11.0.18及以上的HotSpot版本OpenJDK,不要使用OpenJ9版本JDK,避免字节码兼容问题。
注意:JHipster生成的项目首次打开前,建议先在项目根目录执行一次
mvn compile,完成首次依赖拉取和JHipster自动代码生成流程后,再用IntelliJ导入项目,可避免绝大多数首次导入的报红问题。
内容的提问来源于stack exchange,提问作者Nox
相关产品推荐
相关产品推荐

