2015-01-21 4 views
1

У меня есть требование, чтобы все артефакты, созданные maven, имели номер сборки. Номер сборки хранится в файле свойств. Мне удалось контролировать имена созданных артефактов EAR и WAR, но не JAR. Вот соответствующие выдержки из pom.xml. я ожидал конфигурацию Maven-банку-плагин, чтобы работать, но это не так, я в конечном итоге с банкой всегда под названием SelfService-2.jar, в то время, когда buildNumber.properties содержит BuildNumber = 40, специалист формирует SelfService -2.40.war и SelfService-2.40.ear.Изменение имени файла jar с использованием maven

Как получить номер сборки в название баннера? Спасибо заранее.

<artifactId>SelfService</artifactId> 
<name>SelfService</name> 
<packaging>war</packaging> 
<version>2</version> 

<build> 
    <finalName>${project.artifactId}-${buildNumber}</finalName> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-jar-plugin</artifactId> 
     <version>2.3.2</version> 
     <configuration> 
      <finalName>${project.artifactId}-${buildNumber}</finalName> 
     </configuration> 
     </plugin> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-war-plugin</artifactId> 
     <version>2.2</version> 
     <configuration> 
      <finalName>${project.artifactId}-${buildNumber}</finalName> 
     </configuration> 
     </plugin> 
     .... 
+0

Я предполагаю, что у вас есть 3 проекта для этого, один из типов EAR, один из Тип WAR и один тип JAR? (ваш фрагмент pom немного запутан для меня) – Tome

+1

Возможный дубликат [Controlting maven final name of jar artifact] (http://stackoverflow.com/questions/4238944/controlling-maven-final-name-of-jar-artifact) – Joe

ответ

1

я получил то, что было после того, как с помощью следующей конфигурации Maven-баночки-плагин:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-jar-plugin</artifactId> 
    <version>2.3.2</version> 
    <executions> 
     <execution> 
      <phase>package</phase> 
     <goals> 
      <goal>jar</goal> 
     </goals> 
     <configuration> 
      <finalName>${project.artifactId}-${buildNumber}</finalName> 
     </configuration> 
     </execution> 
    </executions> 
    <configuration> 
     <finalName>${project.artifactId}-${buildNumber}</finalName> 
    </configuration> 
</plugin> 
Смежные вопросы