我可以在pom.xml中检查快照与发布版本



是否有一种方法可以跳过插件执行或仅为快照构建(以及相应的发布构建)激活配置文件?

在pom.xml文件中有distributionManagement标签,如下所示:

<project xmlns="http://maven.apache.org/POM/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                      http://maven.apache.org/xsd/maven-4.0.0.xsd">
  ...
  <distributionManagement>
    <repository>
      <id>release</id>
      <name>Corporate Repository</name>
      <url>http://server.name.com/releases/</url>
    </repository>
    <snapshotRepository>
      <id>snapshots</id>
      <name>Propellors Snapshots</name>
      <url>http://server.name.com/snapshots/</url>
    </snapshotRepository>
    ...
  </distributionManagement>
  ...
</project>

是的——你可以直接灵活地做到。

定义一个只有在Maven发布插件运行时才激活的属性。然后让你的其他插件检查该属性的值来决定是否运行。

    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-release-plugin</artifactId>
      <version>2.4.2</version>
      <configuration>
        <preparationGoals>clean install -D release-flag=true</preparationGoals>
        <goals>deploy -D release-flag=true</goals>
      </configuration>
    </plugin>

PS:用-P release-profile代替-D release-flag也可以达到类似的效果

最新更新