Как сохранить версию манифеста плагина и версию pom в синхронизации в Maven с Tycho
Я использую Maven с Tycho для создания плагина eclipse. Тихо генерирует помпон.xml-файл для Maven путем проверки файла манифеста плагина. Теперь и файл манифеста, и файл pom имеют версию плагина, и их необходимо синхронизировать вручную. Это связано с тем, что я сделал некоторые настройки в созданном файле pom и не могу перезаписывать его каждый раз, когда я изменяю версию в манифесте.
мой вопрос здесь в том, есть ли способ сохранить эти версии в синхронизации автоматически с помощью Тайхо?
4 ответов
Кажется, вы можете обновлять версии с помощью tycho-версии-плагин (используя tycho 0.14.0 здесь):
mvn -Dtycho.mode=maven org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=NEW_VERSION-SNAPSHOT
это обновляет POMs, манифесты и функции.в XML
прямо сейчас вы должны держать их в синхронизации вручную. Есть открытый вопрос - TYCHO-214: процедуры выпуска OSGi и лучшие практики - который должен охватывать это. В настоящее время он предназначен для 0.9.0 - следующей версии.
у нас была похожая ситуация. Мы устали от изменения версии в манифесте и в pom.XML. Но изменение версии с maven не было хорошим решением, потому что запуск специальной команды maven каждый раз не был решением для нас.
но я нашел Tychoplugin, который мы интегрировали в 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>
этот плагин обновляет версию в pom.xml с версией Манифеста каждая сборка выполняется автоматически.
Подробнее https://www.eclipse.org/tycho/sitedocs/tycho-release/tycho-versions-plugin/plugin-info.html
Это довольно удобно использовать версию Tiger плагин для Eclipse. Этот плагин добавляет контекстное меню eclipse, которое позволяет вам обновлять версии OSGI и pom одновременно.
версию Tiger можно скачать здесь:https://github.com/inventage/version-tiger