我有多个项目,每次都必须传递以下参数。
-Djavax.net.ssl.trustStore=C:VALUE
-P aws-build
-DskipTests=TRUE
完整的命令是:mvn -Djavax.net.ssl.trustStore=C:VALUE clean install -P aws-build -DskipTests=TRUE
我正在尝试永久配置它,这样我就不必每次都放置它mvn clean install
我希望将设置放在设置中.xml或 intellij 中的任何地方或任何工作解决方案都是受欢迎的。目标是如果我运行mvn clean install
,它应该会自动拾取这些参数。谢谢!
这正是maven.config
文件的用途。它位于/<your_project_dir>/.mvn/maven.config
(如果不存在,请创建"maven.config"文件)。将所有自定义 maven 命令参数放在maven.config
中,只要您调用 Maven,maven 就会添加您的自定义命令参数,即运行mvn clean install
现在将包含您的自定义标志。
因此,您的maven.config
文件将如下所示:
-Djavax.net.ssl.trustStore=C:VALUE
-P aws-build
-DskipTests=TRUE
另外,旁注,-DskipTests
就足够了,无需使用=TRUE
。
来自官方的Maven文档:
.mvn/maven.config 文件:
真的很难定义一组通用的 用于调用 Maven 命令行的选项。从Maven开始 3.3.1+,这可以通过将此选项放入脚本来解决,但现在可以通过定义来简单地完成
${maven.projectBasedir}/.mvn/maven.config
包含 MVN 命令行的配置选项。例如,
-T3 -U --fail-at-end
.所以你只需要打电话 Maven 只需使用mvn clean package
而不是mvn -T3 -U --fail-at-end clean package
,不要错过每次通话的-T3 -U --fail-at-end options
。 The${maven.projectBasedir}/.mvn/maven.config
位于${maven.projectBasedir}/.mvn/
目录中;也有效 如果在多模块构建的根目录中。注意从Maven 3.9.0开始,每个参数都必须放入 换行,因此对于上述示例,您的文件将包含内容 喜欢:
-T3 -U --fail-at-end
得到朋友的帮助: 在Intellij Idea中,我们可以这样做: 打开 pom.xml文件 -> 运行 maven -> 新目标 -> 在命令行中添加以下内容:
-Djavax.net.ssl.trustStore=C:VALUE clean install -P aws-build -DskipTests=TRUE
->好的。