2016-05-04 8 views
3

Мне нужно изменить все зависимости моментальных снимков моего проекта до передачи в релиз. Я пытаюсь использовать версии: use-релизы из командной строки mvn версии: use-релизы, но это не работает для меня. Я использую репозиторий Nexus для релизов и версий релизов развернуты correcly и с открытым доступомПлагины Maven Версии: версии: use-релизы ничего не делает

<dependencyManagement> 
<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.11</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>com.efx.util</groupId> 
     <artifactId>efx-util</artifactId> 
     <version>0.0.1-SNAPSHOT</version> 
    </dependency> 
    </dependencies> 
</dependencyManagement> 

Когда я выполняю: МВН версии: использование-релизы, он ничего не делает.

[INFO] ------------------------------------------------------------------------ 
[INFO] Building efx-clientesocket 0.0.1-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- versions-maven-plugin:2.2:use-releases (default-cli) @ efx-clientesocket --- 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building efx-clientesocket-api 0.0.1-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- versions-maven-plugin:2.2:use-releases (default-cli) @ efx-clientesocket-api --- 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building efx-clientesocket-impl 0.0.1-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- versions-maven-plugin:2.2:use-releases (default-cli) @ efx-clientesocket-impl --- 
[INFO] Ignoring reactor dependency: com.efx.clientesocket:efx-clientesocket-api:jar:0.0.1-SNAPSHOT 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building efx-clientesocket-conf 0.0.1-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- versions-maven-plugin:2.2:use-releases (default-cli) @ efx-clientesocket-conf --- 
[INFO] ------------------------------------------------------------------------ 
[INFO] Reactor Summary: 
[INFO] 
[INFO] efx-clientesocket .................................. SUCCESS [ 1.539 s] 
[INFO] efx-clientesocket-api .............................. SUCCESS [ 0.031 s] 
[INFO] efx-clientesocket-impl ............................. SUCCESS [ 0.016 s] 
[INFO] efx-clientesocket-conf ............................. SUCCESS [ 0.015 s] 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 

Однако версии: дисплей-зависимости обновление обнаружить следующий текст соответствующей релиз

------------------------------------------------------------------------ 
[INFO] Building efx-clientesocket-conf 0.0.1-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- versions-maven-plugin:2.2:display-dependency-updates (default-cli) @ efx-clientesocket-conf --- 
[INFO] artifact junit:junit: checking for updates from nexus 
[INFO] The following dependencies in Dependency Management have newer versions: 
[INFO] com.efx.util:efx-util ................ 0.0.1-SNAPSHOT -> 1.0.0-RELEASE 
[INFO] junit:junit ............................................. 4.11 -> 4.12 
[INFO] 
[INFO] ------------------------------------------------------------------------ 

И я также пытаюсь версия: потребительная последние-релизы в качестве альтернативы, и он идет в порядке. Я использую -Dincludes = в этом случае, чтобы избежать обновления версий без снимков. Но, я хотел бы использовать версии: использование-релизы для обеспечения обновления только все моментальных снимков версий и кавер-версии в собственности сразу

Maven версии я использую 3.3.1 версия плагин 2,2

У кого-то есть идея, почему не работает?

ответ

3

1-й вариант: использование-релизы выполняет поиск в pom для всех версий -SNAPSHOT, которые были выпущены, и заменяет их соответствующей версией выпуска.

com.efx.util:efx-util ................ 0.0.1-SNAPSHOT -> 1.0.0-RELEASE 

Это означает, что efx-util-0.0.1-SNAPSHOT должен иметь соответствующий релиз efx-util-0.0.1-RELEASE или efx-util-0.0.1 (официальная версия 0.0.1), иначе она не будет работать. 1.0.0-RELEASE не является соответствующим выпуском

2 версии: использование последних версий выполняет поиск в pom для всех версий, отличных от SNAPSHOT, которые были более новой версией и заменяют их последней версией.

В этом случае это не ограничивается соответствующей версией (0.0.1-SNAPSHOT). Таким образом, релиз может иметь другой номер версии (1.0.0-RELEASE).

надеюсь, что это поможет.

+0

Да! это поможет мне. большое спасибо – johnnynemonic