通过阶段 none 禁用默认 Maven 插件的其他方法?

Other ways of disabling default maven plugins as via phase none?

对于我的一些项目,我不需要默认的 maven 插件,例如我不使用或使用其他编译器。在这种情况下,禁用这些插件可以节省执行时间和构建输出。

目前,我发现禁用默认 maven 插件的唯一方法如下:

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.10.1</version>
                <executions>
                    <execution>
                        <id>default-compile</id>
                        <phase>none</phase>
                    </execution>
                    <execution>
                        <id>default-testCompile</id>
                        <phase>none</phase>
                    </execution>
                </executions>
            </plugin>

我已经在我的代码上启用了 dependabot,它会在每次有新版本的插件时通知我,尽管我没有使用它。

如果我删除版本,maven 会给出如下警告: 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-compiler-plugin 丢失。

所以我的问题是:是否有其他方法可以禁用不需要插件版本号且不会生成此类 maven 警告的标准 maven 插件?

亲切的问候 托尔斯滕

如果您不构建 JAR 或 WAR,您可以在 POM 文件中设置 <packaging>pom</packaging>,这会导致默认插件数量最少。

默认插件由生命周期设置,生命周期由封装决定。您甚至可以使用自己的生命周期和默认插件定义自己的包装 <packaging>kleiber</packaging>