1
我正在运行Maven(2)发布版本,其中包含:mvn -f release.xml clean deploy
并希望将当前运行的pom文件名(release.xml
)获取到属性或mojo中。获取maven pom文件的名称
可能吗?
我正在运行Maven(2)发布版本,其中包含:mvn -f release.xml clean deploy
并希望将当前运行的pom文件名(release.xml
)获取到属性或mojo中。获取maven pom文件的名称
可能吗?
那么你可以使用属性
${env.MAVEN_CMD_LINE_ARGS}
,这将扩大到像
clean install -Paxis -Dmaven.test.skip -f mypom.xml -pl util
但是,如果你只是想在mypom .xml部分,您将不得不做一些脚本,这在maven中不受支持。常见解决方案是maven antrun plugin或gmaven (groovy) plugin。这里有一个办法做到这一点在gmaven:
<plugin>
<groupId>org.codehaus.groovy.maven</groupId>
<artifactId>gmaven-plugin</artifactId>
<executions>
<execution>
<phase>process-classes</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<source>
System.out.println(
System
.getenv("MAVEN_CMD_LINE_ARGS")
.replaceFirst(/.*\-f\s+(\S+).*/ , 'POM File: $1')
);
</source>
</configuration>
</execution>
</executions>
</plugin>
编辑:只要你想它的属性,或者使用System.setProperty或者直接到project.properties