2010-05-17 19 views
14

J'utilise Maven avec Tycho pour construire un plugin eclipse. Tycho génère le fichier pom.xml pour Maven en inspectant le fichier manifeste du plugin. Maintenant, le fichier manifest et le fichier pom ont la version du plugin et ils doivent être synchronisés manuellement. C'est parce que j'ai fait une certaine personnalisation dans le fichier pom généré et je ne peux pas l'écraser chaque fois que je change la version dans le manifeste.Comment conserver la version du plug-in et la version pom synchronisées dans Maven avec Tycho

Ma question est la suivante, est-il possible de synchroniser automatiquement ces versions avec Tycho?

Répondre

18

Il semble que vous pouvez mettre à jour les versions en utilisant les Tycho-versions-plugin (en utilisant Tycho 0.14.0 ici):

mvn -Dtycho.mode=maven org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=NEW_VERSION-SNAPSHOT

Cette mise à jour, POM et Manifestes Feature.xml

+1

+1 Nice, merci beaucoup! –

+1

J'ai essayé ceci et j'ai obtenu: [ERREUR] Phase de cycle de vie inconnue ".mode = maven". Vous devez spécifier une phase de cycle de vie valide ou un objectif au format : ou : [: ]: <... –

+0

A travaillé correctement avec 0.18.1. J'avais juste besoin de changer le site \ category.xml –

2

Nous avons eu une situation similaire. Nous étions fatigués de changer la version dans le manifeste et dans le pom.xml. Mais changer la version avec maven n'était pas une bonne solution, car l'exécution d'une commande spéciale maven à chaque fois n'était pas une solution pour nous.

Mais j'ai trouvé un Tychoplugin que nous avons intégré dans 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> 

Ce plugin met à jour la version dans le fichier pom.xml avec la version du manifeste chaque fois automatiquement.

Plus d'informations sur https://www.eclipse.org/tycho/sitedocs/tycho-release/tycho-versions-plugin/plugin-info.html

0

Il est plutôt pratique pour utiliser le plugin pour Eclipse version Tiger. Ce plugin ajoute un menu contextuel à eclipse qui vous permet de mettre à jour les versions OSGI et pom simultanément.

Version Tiger peut être téléchargé ici: https://github.com/inventage/version-tiger