执行后
mvn clean verify
一切都成功正确编译,但我也得到以下信息:
[WARNING] Plugin validation issues were detected in 7 plugin(s)
[WARNING]
[WARNING] * org.apache.maven.plugins:maven-resources-plugin:3.2.0
[WARNING] * org.apache.maven.plugins:maven-jar-plugin:3.2.2
[WARNING] * org.jacoco:jacoco-maven-plugin:0.8.8
[WARNING] * org.apache.maven.plugins:maven-compiler-plugin:3.10.1
[WARNING] * org.codehaus.mojo:build-helper-maven-plugin:3.3.0
[WARNING] * org.apache.maven.plugins:maven-surefire-plugin:2.22.2
[WARNING] * com.mysema.maven:apt-maven-plugin:1.1.3
[WARNING]
[WARNING] For more or less details, use 'maven.plugin.validation' property with one of the values (case insensitive): [BRIEF, DEFAULT, VERBOSE]
首先,我不理解警告本身,它对我的代码的影响等。 那么如何解决呢?最后,如何使用
maven.plugin.validation
属性?我找不到任何关于此的文档。
这是一个新功能,警告您正在使用的某些插件将来可能无法使用。通过使用简短模式,您可以使声音变得更安静,但它永远不会完全消失。
mvn package -Dmaven.plugin.validation=brief
您可以在 MAVEN_ARGS 环境变量中设置它并在任何地方拾取它,因此除了警告“某些插件已过时”之外,您不会分心
export MAVEN_ARGS="-Dmaven.plugin.validation=brief"
tl;dr - 尝试升级 Maven。为我工作。
我收到这两个警告...
[WARNING] * org.apache.maven.plugins:maven-compiler-plugin:3.10.1
[WARNING] * org.apache.maven.plugins:maven-resources-plugin:3.2.0
...并且我的 POM 中没有配置任何一个插件。所以我假设我安装的 Maven 自动使用了这些插件的旧版本;我在 Maven Central 确认这两个插件都有比上面更新的版本;我将 Maven 从 3.9.2 升级到 3.9.3。现在,即使我的 POM 没有改变,我也没有收到任何警告。
在 maven 3.9.x 中引入,maven 验证器会向您显示与 maven 4.x 不兼容的插件。只要您保持在 Maven 4.x 以下,就不会对您的构建产生影响。
报告的插件有两种类型
-> 用户可以通过编辑 POM 来修复配置来修复项目。用户应查阅实际的插件文档或尝试将插件更新到新版本。
-> 只能由维护者修复
要一起删除消息,您可以在本地设置
mvn -Dmaven.plugin.validation=none
可以添加到MAVEN_OPTS或MAVEN_ARGS环境变量中,即可 也可以添加到 .mvn/maven.config 文件中以便配置每个 项目。
用户可以将此类属性添加到其settings.xml文件中进行更改 全局配置。
注意,maven.plugin.validation 是 Maven 的配置项 本身,它不能在项目 pom.xml 中使用
其他不区分大小写的选项在 maven 验证器文档中列出:
我将 Java 版本从 8 更新到 17。出于我不知道的原因工作