代码之家  ›  专栏  ›  技术社区  ›  tputkonen

如何配置Hudson/Maven2以将SVN修订添加到EAR名称中?

  •  1
  • tputkonen  · 技术社区  · 15 年前

    我们使用Hudson、Maven2和Maven EAR插件。

    是否可以让构建的EAR文件在其文件名中包含SVN修订版(类似于project-1234.ear)?

    2 回复  |  直到 7 年前
        1
  •  1
  •   Lonzak    7 年前

    你可以使用 buildnumber-maven-number 为此。基本上,这个插件设置了一个 ${buildNumber} 属性,稍后可以在Maven EAR插件配置中使用。

    首先,按照文档设置内部版本号maven插件 here :

    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>buildnumber-maven-plugin</artifactId>
        <version>1.0-beta-4</version>
        <executions>
          <execution>
            <phase>validate</phase>
            <goals>
              <goal>create</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <doCheck>true</doCheck>
          <doUpdate>true</doUpdate>
        </configuration>
      </plugin>
      ...
    </plugins>
    

    然后,使用 finalName 参数自定义生成的EAR的名称。例如:

    <plugins>
      ...
      <plugin>
        <artifactId>maven-ear-plugin</artifactId>
        <version>2.4</version>
        <configuration>
          <finalName>${project.artifactId}-r${buildNumber}</finalName> 
          ...
        </configuration>
      </plugin>
      ...
    </plugins>
    
        2
  •  0
  •   Peter Schuetze    15 年前

    哈德逊现在是修订版。所以你有两个选择。只需在后面重命名输出或向maven提供修订版,它就可以根据需要更改名称。

    想一想,也许还有另一种方法。让Maven查询SVN以获取修订,然后将其合并到EARNAME中。


    但是,你真的需要它吗?哈德逊提供了指纹耳朵的选项。这样,您可以稍后将文件提交给Hudson,它会返回内部版本号。

    推荐文章