Come mantenere versione plug-in e pom manifesta versione in sincronia in Maven con Tycho
-
27-09-2019 - |
Domanda
Sto usando Maven con Tycho per costruire un plugin Eclipse. Tycho genera il file pom.xml per Maven ispezionando il file manifesto del plugin. Ora sia il file manifesto e il file pom hanno la versione del plugin e hanno bisogno di essere tenuti in sincronia manualmente. Questo è perché ho fatto un po 'di personalizzazione nel file pom generato e non possono sovrascrivere ogni volta a cambiare la versione nel manifesto.
La mia domanda è, c'è un modo per mantenere queste versioni in sincronia automaticamente utilizzando Tycho?
Soluzione
Sembra è possibile aggiornare le versioni con il Tycho-versioni-plugin (usando Tycho 0.14.0 qui):
mvn -Dtycho.mode=maven org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=NEW_VERSION-SNAPSHOT
Questa aggiornamenti POM, si manifesta e feature.xml
Altri suggerimenti
In questo momento è necessario tenerli in sincronia manualmente. C'è una questione aperta - TYCHO-214: le procedure di rilascio OSGi e best practice - che dovrebbe coprire questo. E 'attualmente mirato per 0.9.0 -. La prossima versione
Abbiamo avuto una situazione simile. Eravamo stanchi di cambiare la versione nel manifesto e nella pom.xml. Ma cambiare la versione con Maven non era una buona soluzione, a causa di esecuzione di uno speciale ogni esperto di comando non erano soluzione per noi.
Ma ho trovato un Tychoplugin, che abbiamo integrato in out build.
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-versions-plugin</artifactId>
<version>${tycho.version}</version>
<executions>
<execution>
<id>versions</id>
<phase>validate</phase>
<goals>
<goal>update-pom</goal>
</goals>
</execution>
</executions>
</plugin>
Questo plugin aggiorna la versione nel pom.xml con la versione del Manifesto ogni generare automaticamente.
Maggiori informazioni su https: / /www.eclipse.org/tycho/sitedocs/tycho-release/tycho-versions-plugin/plugin-info.html
E 'piuttosto comodo da usare versione Tiger plug-in per Eclipse. Questo plugin aggiunge un menu contestuale per Eclipse che consente di aggiornare le versioni OSGI e pom simultaniously.
La versione Tiger può essere scaricato qui: https://github.com/inventage/version-tiger