ho avuto lo stesso problema e ho voluto risolverlo senza correre più di un comando o inserendo la versione manualmente.
Qui è la mia soluzione per y (o minore) minimo:
ho eseguito uno script Groovy in inizializzare fase. Questo script crea release.properties. Aggiungi questo al vostro progetto /costruire/plugins sezione del pom.xml:
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
<version>1.5</version>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.4.6</version>
</dependency>
</dependencies>
<executions>
<!-- Force maven-release-plugin to increase MINOR, not PATCH, and create tag as vX.Y.Z -->
<execution>
<id>release-parameters</id>
<phase>initialize</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<scripts>
<script>
<![CDATA[
final String SNAPSHOT = '-SNAPSHOT'
Properties releaseProps = new Properties()
File releasePropsFile = new File('release.properties')
String releaseVersion = '${project.version}'.replace('-SNAPSHOT', '')
String[] vNumbers = releaseVersion.split('\\.')
String snapshotVersion = vNumbers[0] + '.' + (Integer.parseInt(vNumbers[1]) + 1) + '.' + '0' + SNAPSHOT
releaseProps.setProperty('scm.tag', 'v' + releaseVersion)
releaseProps.setProperty('project.rel.${project.groupId}:${project.artifactId}', releaseVersion)
releaseProps.setProperty('project.dev.${project.groupId}:${project.artifactId}', snapshotVersion)
releaseProps.store(releasePropsFile.newWriter(), null)
]]>
</script>
</scripts>
</configuration>
</execution>
</executions>
</plugin>
Questo script cambia anche il tag nome per vX.Y.Z in SCM.La fase di inizializzazione non viene eseguita nella versione : preparare la fase. Per risolvere questo problema, è possibile eseguire un "mvn install" prima di un rilascio, o cambiare la tua comando di rilascio a:
mvn --batch-mode initialize clean release:prepare release:perform
Chi release.properties: https://maven.apache.org/maven-release/maven-release-plugin/examples/non-interactive-release.html
Alcune obiezioni contro l'utilizzo di ** 1.2-SNAPSHOT ** invece di ** 1.2.0-SNAPSHOT **. – khmarbaise
Perché non usi il plugin di rilascio di jenkins m2? https://wiki.jenkins-ci.org/display/JENKINS/M2+Release+Plugin – willome
Potremmo voler utilizzare la terza cifra in futuro per le versioni dei bug, ma per ora saranno sufficienti 2 cifre. Non sapevo nemmeno del plugin di rilascio. Sembra piuttosto utile, ma non sembra risolvere il problema relativo all'incremento della versione su modelli di versioni non predefinite. Aiuta comunque a selezionare la versione giusta. – bergvandenp