2009-06-17 7 views
3

Я использую Maven2. Я создал родительский POM для своей организации. Я хочу, чтобы различные группы использовали его в качестве родителя для своего проекта, но я хочу, чтобы они использовали последнюю версию. Почему-то, используя его как родитель с версией LATEST не работает,ПОСЛЕДНИЙ вариант родительского проекта в Maven

любая идея?

Спасибо, Ronen.

ответ

7

Вам не нужно определять новую версию для каждого небольшого изменения, внесенного вами в POM.

Эта версия означает определенные функции артефакта (в настройках сборки POM - это параметры сборки), я должен был объявить одну версию и сделать все проекты использующими эту версию (использовать версию SNAPSHOT - отличная идея) , Если вы сделаете небольшое обновление, сделайте это в этой версии. Если вы сделаете большее изменение, вы можете захотеть объявить новую версию и использовать все новые POM для использования этой версии, таким образом вы избежите разбивать старые проекты, используя новый супер POM.

+0

Yup, SNAPSHOT - это путь. При развертывании POM с тегом версии с SNAPSHOT в нем ключевое слово будет заменено меткой времени. В результате ваши пользователи автоматически загружают версию с последней меткой времени в свои локальные репозитории. – mikek

1

Я думаю, вы хотите использовать SNAPSHOT, например.

<version>1.2-SNAPSHOT</version> 
2

Плагин версии Maven имеет цель version:update-parent, чтобы установить родительскую версию в последнюю родительскую версию.

Просто запустите

mvn versions:update-parent 

в проекте, который вы хотите использовать последнюю родительскую версию, она изменяет файлы POM для вас.

0

Вам необходимо запустить mvn с параметром -U, чтобы принудительно обновить файлы локальных метаданных, которые содержат сопоставления для версий LATEST и RELEASE.