我们有一个多模块Maven项目,并且(至少在默认情况下)我们希望使用--fail-at-end
来构建它。必须始终在命令行上传递,或者这也可以在(根)pom.xml
文件中以某种方式指定,或者可能在settings.xml
文件中指定,或类似的东西?
答案 0 :(得分:1)
这里有一个古老的答案: Is it possible to enable -fae/--fail-at-end by default?
然而,时代变了。您可以尝试的方法是修改Maven批处理文件或shell文件,以启用将在每次执行时运行的默认参数。
您可以在此处找到原始的Jira问题:http://jira.codehaus.org/browse/MNG-5342
在Windows上,您定义一个环境变量MAVEN_DEFAULT_ARGS,其中包括您始终要运行的开关,并修改bin文件夹中的Maven批处理文件:
...
%MAVEN_JAVA_EXE% %MAVEN_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%\bin\m2.conf" "-Dmaven.home=%M2_HOME%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS% %MAVEN_DEFAULT_ARGS%
...
在基于Unix的系统上,使用您始终要运行的命令向.bash_profile添加参数MAVEN_DEFAULT_ARGS,并修改bin文件夹中的mvn文件:
exec "$JAVACMD" \
$MAVEN_OPTS \
-classpath "${M2_HOME}"/boot/plexus-classworlds-*.jar \
"-Dclassworlds.conf=${M2_HOME}/bin/m2.conf" \
"-Dmaven.home=${M2_HOME}" \
${CLASSWORLDS_LAUNCHER} "$@" \
$MAVEN_DEFAULT_ARGS