maven项目打包时报错:Error injecting constructor, java.lang.ExceptionInInitializerError: Cannot access defaults field of Properties at org.apache.maven.plugin.war.WarMojo.<init>(Unknown Source) while locating org.apache.maven.plugin.war.WarMojo
在定位 org.apache.maven.plugin.war.WarMojo 时无法访问 org.apache.maven.plugin.war.WarMojo.<init>(Unknown Source) 处的属性的默认字段
在网上找了很多方法,最后得出结论:与代码无关,在pom.xml中指定package插件的版本即可:

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
</plugin>
</plugins>
</build>

我的jdk版本为16,改为目前最新的package插件版本3.2.2即可成功打包
遇到Maven项目打包时的构造函数注入错误,导致无法访问Properties的默认字段。问题根源并非代码本身,而是Maven插件版本不兼容。通过在pom.xml中更新maven-war-plugin至最新版本3.2.2,成功解决了JDK 16环境下打包失败的问题。
5696

被折叠的 条评论
为什么被折叠?



