maven deploy работает со снимками, но 404 для выпусков
Я пытаюсь развернуть наш внутренний репозиторий Nexus. Я настроил проект Maven, где я могу сделать mvn install
а также mvn clean deploy
, Странная вещь, когда я удаляю SNAPSHOT
из версии я получаю 404
,
Вот мой pom.xml, который работает для SNAPSHOTS
:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>MavenExample</groupId>
<artifactId>com.mycompany</artifactId>
<version>1.0-SNAPSHOT</version>
<distributionManagement>
<repository>
<id>nexus</id>
<url>http://nexus.mycompany.com:8000/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>nexus</id>
<url>http://nexus.mycompany.com:8000/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
<build>
<plugins>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.3</version>
<extensions>true</extensions>
<configuration>
<serverId>nexus</serverId>
<nexusUrl>http://nexus.mycompany.com:8000/repository/maven-releases/</nexusUrl>
<!-- update this to the correct id! -->
<stagingProfileId>myid</stagingProfileId>
</configuration>
</plugin>
</plugins>
</build>
</project>
Когда я меняюсь <version>1.0-SNAPSHOT</version>
в <version>1.0</version>
Я получаю эту ошибку:
[ERROR] Failed to execute goal org.sonatype.plugins:nexus-staging-maven-plugin:1.6.3:deploy (injected-nexus-deploy) on project explicit-staging-example: Execution injected-nexus-deploy of goal org.sonatype.plugins:nexus-staging-maven-plugin:1.6.3:deploy failed: Nexus connection problem to URL [http://nexus.mycompany.com:8000/repository/maven-releases/ ]: 404 - Not Found -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException
Они оба доступны в Nexus:
Я пытался добавить различные плагины, но не повезло. Я не эксперт по Maven, поэтому любая помощь будет принята с благодарностью!
2 ответа
Вы не можете развернуть поэтапные выпуски, потому что сейчас вы используете общедоступную версию Nexus, и она не поддерживает эту функцию.
На данный момент вам нужно удалить nexus-staging-maven-plugin
Конфигурация из вашего pom.xml и обычного
mvn clean deploy
будет "просто работать" (но без постановки).
Когда я воспользовался ответом Стива С., maven просто прекратил развертывание. Я вместо этого прошел -DskipStaging=true
, как задокументировано здесь. Это позволило мне продолжать использовать nexus-staging-maven-plugin
Просто без возможности постановки.
Я столкнулся с той же проблемой, и этот работает для меня.
mvn clean install deploy -DskipStaging=true