Развертывание артефактов в nexus из maven дает ошибку "код возврата: 401"?
я получаю ошибку 401 при развертывании в цепь. Я не делаю никаких изменений в установленном nexus. Nexus работает на localhost:8080/nexus
и я могу войти в систему с пользователем/паролем по умолчанию. Когда я использую mvn deploy
Я получаю эту ошибку.
вот мой пом.
<groupId>testproject</groupId>
<artifactId>testproject</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>testproject</name>
<url>http://maven.apache.org</url>
<distributionManagement>
<repository>
<id>releases</id>
<url>http://localhost:8080/nexus/content/repositories/releases</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://localhost:8080/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
<dependencies>
.........
</dependencies>
и./~ м2/настройки.в XML
<servers>
<server>
<id>snapshots</id>
<username>deployment</username>
<password>deployment123</password>
</server>
<server>
<id>releases</id>
<username>deployment</username>
<password>deployment123</password>
</server>
</servers>
исключения:
Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default- deploy) on project testproject: Failed to deploy artifacts: Could not transfer artifact testproject:testproject:jar:1.0-20131213.150615-1 from/to snapshots (http://localhost:8080/nexus/content/repositories/snapshots): Failed to transfer file: http://localhost:8080/nexus/content/repositories/snapshots/testproject/testproject/1.0-SNAPSHOT/testproject-1.0-20131213.150615-1.jar.
Return code is: 401 -> [Help 1]
пожалуйста, помогите мне.
3 ответов
теперь работает. Нужно отредактировать $M2_HOME/conf/settings.xml
вместо /home/user/.m2/settings.xml
HTTP 401-это код состояния для "unauthorized", что означает, что ваш deployment
пользователь не имеет права загружать артефакты в этот конкретный репозиторий в Nexus. Войдите в Nexus и дайте deployment
пользователь роль(ы), необходимые для изменения этого РЕПО моментального снимка.
я пропустил
<servers>
меня.m2/settings.xml
on GitLab-ci + MAVEN + JFrog Artifactory:
мой gitlab-ci.yxml
Artifactory_deploy:
stage: install
only:
- desarrollo
script:
- echo "Deploying to Artifactory"
- cd $CLONE_DIR
- mvn -X deploy
мой .м2/настройки.в XML
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
https://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<username>${ARTIFACTORY_USER}</username>
<password>${ARTIFACTORY_PASSWORD}</password>
<id>central</id>
</server>
<server>
<username>${ARTIFACTORY_USER}</username>
<password>${ARTIFACTORY_PASSWORD}</password>
<id>snapshots</id>
</server>
</servers>
<profiles>
<profile>
<id>develop</id>
<properties>
<artifactory.ip>${ARTIFACTORY_IP}</artifactory.ip>
<artifactory.port>${ARTIFACTORY_PORT}</artifactory.port>
</properties>
<repositories>
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>libs-release</name>
<username>admin</username>
<password>THISWASMYENCRYPTEDPASSWORD</password>
<url>http://${ARTIFACTORY_IP}:${ARTIFACTORY_PORT}/artifactory/libs-release</url>
</repository>
<repository>
<snapshots />
<id>snapshots</id>
<name>libs-snapshot</name>
<username>admin</username>
<password>THISWASMYENCRYPTEDPASSWORD</password>
<url>http://${ARTIFACTORY_IP}:${ARTIFACTORY_PORT}/artifactory/libs-snapshot</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>libs-release</name>
<username>admin</username>
<password>password</password>
<url>http://${ARTIFACTORY_IP}:${ARTIFACTORY_PORT}/artifactory/libs-release</url>
</pluginRepository>
<pluginRepository>
<snapshots />
<id>snapshots</id>
<name>libs-snapshot</name>
<username>admin</username>
<password>password</password>
<url>http://${ARTIFACTORY_IP}:${ARTIFACTORY_PORT}/artifactory/libs-snapshot</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>develop</activeProfile>
</activeProfiles>
</settings>
<servers>
<server>
<id>snapshots</id>
<username>deployment</username>
<password>deployment123</password>
</server>
<server>
<id>releases</id>
<username>deployment</username>
<password>deployment123</password>
</server>
</servers>