У меня есть проект Maven с несколькими модулями.Необходимо развернуть все модули ( jars и один полученный war ) на удаленном сервере Artifactory.Поэтому в settings.xml я добавил конфигурацию:
<?xml version="1.0" encoding="UTF-8"?>
<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<servers>
<server>
<username>admin</username>
<password>password</password>
<id>central</id>
</server>
<server>
<username>admin</username>
<password>password</password>
<id>snapshots</id>
</server>
</servers>
<profiles>
<profile>
<repositories>
<repository>
<id>central</id>
<name>libs-release</name>
<url>http://192.168.1.120:8088/artifactory/libs-release</url>
</repository>
<repository>
<snapshots />
<id>snapshots</id>
<name>libs-snapshot</name>
<url>http://192.168.1.120:8088/artifactory/libs-snapshot</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>plugins-release</name>
<url>http://192.168.1.120:8088/artifactory/plugins-release</url>
</pluginRepository>
<pluginRepository>
<snapshots />
<id>snapshots</id>
<name>plugins-snapshot</name>
<url>http://192.168.1.120:8088/artifactory/plugins-snapshot</url>
</pluginRepository>
</pluginRepositories>
<id>artifactory</id>
</profile>
</profiles>
<activeProfiles>
<activeProfile>artifactory</activeProfile>
</activeProfiles>
</settings>
В главном модуле есть раздел:
<distributionManagement>
<repository>
<id>central</id>
<url>http://192.168.1.120:8088/artifactory/libs-release-local</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://192.168.1.120:8088/artifactory/libs-snapshot-local</url>
</snapshotRepository>
</distributionManagement>
И все модули имеют 1.0-SNAPSHOT
версию.Но при выполнении команды: >mvn deploy
произошла следующая ошибка:
[ОШИБКА] Не удалось выполнить цель org.apache.maven.plugins: maven-deploy-plugin: 2.5: deploy (по умолчанию-deploy) на задании проекта: не удалось развернуть артефакты: не удалось перенести артефакт * имя-проекта: имя-проекта * e: pom: 0.0.1 из / в центральный (http://192.168.1.120:8088/artifactory/libs-release-local): не удалось передать файл: http://192.168.1.120:8088/artifactory/libs-release-local/project-name/project-name/0.0.1/project-name-0.0.1.pom. Код возврата: 401 -> [Помощь 1]
Как с этим бороться?
ОБНОВЛЕНИЕ:
Хорошо, яполучил ошибку 401 говорит: 401 = "Несанкционированный". Поэтому я добавил правильное имя пользователя / пароль в settings.xml. Кажется, работает сейчас.
Есть последний вопрос: это правильно, что яя использую суффикс SNAPSHOT в версии? Это правильное поведение для ситуации, когда мне нужно развернуть все модули на удаленном репо? Как справиться с ситуацией, когда один модуль был сломан, и мои коллеги должны использовать предыдущую версию этого модуля?