MAVEN_OPTS与mvn -D

时间:2016-08-15 13:10:22

标签: jenkins properties maven-3

我认为两者都定义相同 - JVM属性,但这两者之间显然存在差异,我找不到明确的解释。如果我在构建的Jenkins Maven中同时使用它们,则只有-D设置的属性在System.getProperties()的Java应用程序中可见。虽然MAVEN_OPTS也应该传递给JVM。好像我错过了什么。

解释说明。

1 个答案:

答案 0 :(得分:1)

MAVEN_OPTS是一个环境变量,允许您将参数传递给运行Maven的Java VM。

因此,您可以使用它来设置堆和perm大小(例如MAVEN_OPTS = -XX:MaxPermSize = 256m)。

相反,-D参数是命令行参数。 Maven已经在Java中运行,因此您将无法控制与Java相关的参数。

有关命令行参数和MAVEN_OPTS的说明,请参阅this page

基于此,我猜测你没有看到变量的原因是因为它被用作JVM参数而不是属性。

也许this answer会帮助你获得它们?