Почему я получаю ошибку «401 неавторизовано» в Maven?
Вот ошибка, которую я получаю при звонке mvn deploy
(полные логи внизу):
[INFO] BUILD FAILURE
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project xbnjava: Failed to deploy artifacts: Could not transfer artifact com.github.aliteralmind:xbnjava:pom:0.1.2 from/to sonatype-nexus-staging (https://oss.sonatype.org/service/local/staging/deploy/maven2/): Failed to transfer file: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom. Return code is: 401, ReasonPhrase: Unauthorized. -> [Help 1]
Согласно этой странице поддержки сонатипа :
«Если вы получаете 401, это потому, что maven отправляет неправильные учетные данные для входа или вообще не отправляет учетные данные».
Ниже приведены шаги , которые я взял, ниже мои полные settings.xml
и pom.xml
файлы, и ниже приведены полные логи от mvn deploy
и mvn deploy -e
.
Любые идеи были бы хорошы. Я просто бью стену за стеной с Maven.
Я выполнил контрольный список sonatype при получении ошибки 401:
Пункт 1 контрольного списка . Убедитесь, что ваше имя пользователя и пароль верны, войдя в интерфейс Nexus. Если на вашем компьютере установлен curl, вы можете попробовать развернуть артефакт с помощью ...
- Я успешно вошел в систему и вышел с сайта sonatype.org, используя user / pass
settings.xml
. - Я попытался использовать
curl
для развертывания артефакта вручную с помощью команды
[C:\]curl -u MY_SONATYPE_DOT_COM_USERNAME:MY_SONATYPE_DOT_COM_PASSWORD https://oss.sonatype.org/content/repositories/snapshots/com/github/aliteralmind/xbnjava/0.1.2-SNAPSHOT/xbnjava-0.1.2-20140716.224928-1.pom --request PUT --data @pom.xml
но получил эту ошибку:
Warning: Couldn't read data from file "pom.xml", this makes an empty POST.
curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). If the default
bundle file isn't adequate, you can specify an alternate file
using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
the bundle, the certificate verification probably failed due to a
problem with the certificate (it might be expired, or the name might
not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
the -k (or --insecure) option.
Я снова запустил его с -k
опцией, и на этот раз получил только это:
Couldn't read data from file "pom.xml", this makes an empty POST.
Я никогда раньше не использовал curl, поэтому не знаю, что мне делать с этой информацией.
Пункт контрольного списка 2 . Если сообщение об ошибке отсутствует, убедитесь, что ваши права пользователя правильно настроены на сервере. Обязательно удалите только что созданное репо.
Я не знаю, что значит «капля». Я считаю, что мои привилегии установлены правильно, поскольку я получил это сообщение от sonatype:
- Конфигурация подготовлена, теперь вы можете:
- Развернуть артефакты моментальных снимков в репозиторий https://oss.sonatype.org/content/repositories/snapshots
- Разверните артефакты выпуска в промежуточном репозитории https://oss.sonatype.org/service/local/staging/deploy/maven2
- Продвигайте поэтапные артефакты в репозиторий Releases
- Загрузите снимок и выпустите артефакты из группы https://oss.sonatype.org/content/groups/public
- Загрузите снимок состояния, выпуск и поэтапные артефакты из промежуточной группы https://oss.sonatype.org/content/groups/staging
и я уже успешно поместить эти элементы на сервер через mvn deploy
в течение последних нескольких дней.
Настройки проекта:
Пункт контрольного списка 3 . Убедитесь, что вы настроили сервер
settings.xml
и что его идентификатор идентичен идентификатору репозитория распространения в pom.xml.
- В
settings.xml
settings / servers / server / id равноossrh
- В
pom.xml
distributionManagement / snapshotRepository / id равноossrh
(полные файлы внизу)
Пункт контрольного списка 4 . Убедитесь, что ваш файл settings.xml находится в правильном месте (обычно это _ ~ / .m2 / settings.xml). Вы можете проверить это, запустив mvn help: effective-settings.
Согласно справочнику настроек Maven , settings.xml должен находиться в одном из двух мест:
- Установка Maven:
$M2_HOME/conf/settings.xml
- Установка пользователя:
${user.home}/.m2/settings.xml
Вот моя установка:
settings.xml
:C:\applications\programming\apache-maven-3.2.2\conf\settings.xml
M2_HOME
являетсяC:\applications\programming\apache-maven-3.2.2
Вывод для mvn help:effective-settings
:
[C:\applications\utilities\curl]
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-help-plugin:2.2:effective-settings (default-cli) @ standalone-pom ---
[INFO]
Effective user-specific configuration settings:
<?xml version="1.0" encoding="UTF-8"?>
<!-- ====================================================================== -->
<!-- -->
<!-- Generated by Maven Help Plugin on 2014-07-18T12:48:19 -->
<!-- See: http://maven.apache.org/plugins/maven-help-plugin/ -->
<!-- -->
<!-- ====================================================================== -->
<!-- ====================================================================== -->
<!-- -->
<!-- Effective Settings for 'jeffy' on 'kermit-the-frog' -->
<!-- -->
<!-- ====================================================================== -->
<settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sc
hemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd">
<localRepository xmlns="http://maven.apache.org/SETTINGS/1.1.0">C:\Users\jeffy\.m2\repository</localRepository
>
<servers xmlns="http://maven.apache.org/SETTINGS/1.1.0">
<server>
<username>MY_SONATYPE_DOT_COM_USERNAME</username>
<password>***</password>
<id>ossrh</id>
</server>
</servers>
<pluginGroups xmlns="http://maven.apache.org/SETTINGS/1.1.0">
<pluginGroup>org.apache.maven.plugins</pluginGroup>
<pluginGroup>org.codehaus.mojo</pluginGroup>
</pluginGroups>
</settings>
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.310 s
[INFO] Finished at: 2014-07-18T12:48:19-04:00
[INFO] Final Memory: 7M/17M
[INFO] ------------------------------------------------------------------------
Пункт контрольного списка 5 . Если сервер использует https, но URL в вашем POM - http, вы также можете получить 401.
Я не понимаю, о каком URL идет речь.
Пункт контрольного списка 6 . Используйте последнюю версию Maven, так как существует известная проблема с 401: MNG-4469.
Я использую последнюю версию:
[C:\]mvn -version
Apache Maven 3.2.2 (45f7c06d68e745d05611f7fd14efb6594181933e; 2014-06-17T09:51:42-04:00)
Maven home: C:\applications\programming\apache-maven-3.2.2
Java version: 1.7.0_51, vendor: Oracle Corporation
Java home: C:\applications\programming\jdk_7_51\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "x86", family: "windows"
------------------
Полный settings.xml
и pom.xml
файлы
(Полные журналы для mvn deploy
и mvn deploy -e
ниже)
settings.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<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 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>ossrh</id>
<username>MY_SONATYPE_DOT_COM_USERNAME</username>
<password>MY_SONATYPE_DOT_COM_PASSWORD</password>
</server>
</servers>
<pluginGroups></pluginGroups>
<proxies></proxies>
<mirrors></mirrors>
<profiles></profiles>
</settings>
pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.aliteralmind</groupId>
<artifactId>xbnjava</artifactId>
<packaging>pom</packaging>
<version>0.1.2</version>
<name>XBN-Java</name>
<url>https://github.com/aliteralmind/xbnjava</url>
<inceptionYear>2014</inceptionYear>
<organization>
<name>Jeff Epstein</name>
</organization>
<description>XBN-Java is a collection of generically-useful backend (server side, non-GUI) programming utilities, featuring RegexReplacer and FilteredLineIterator. XBN-Java is the foundation of Codelet (http://codelet.aliteralmind.com).</description>
<parent>
<groupId>org.sonatype.oss</groupId>
<artifactId>oss-parent</artifactId>
<version>7</version>
</parent>
<licenses>
<license>
<name>Lesser General Public License (LGPL) version 3.0</name>
<url>https://www.gnu.org/licenses/lgpl-3.0.txt</url>
</license>
<license>
<name>Apache Software License (ASL) version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
</license>
</licenses>
<developers>
<developer>
<name>Jeff Epstein</name>
<email>aliteralmind-github@yahoo.com</email>
<roles>
<role>Lead Developer</role>
</roles>
</developer>
</developers>
<issueManagement>
<system>GitHub Issue Tracker</system>
<url>https://github.com/aliteralmind/xbnjava/issues</url>
</issueManagement>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
<scm>
<connection>scm:git:git@github.com:aliteralmind/xbnjava.git</connection>
<url>scm:git:git@github.com:aliteralmind/xbnjava.git</url>
<developerConnection>scm:git:git@github.com:aliteralmind/xbnjava.git</developerConnection>
</scm>
<properties>
<java.version>1.7</java.version>
<jarprefix>R:\jeffy\programming\build\/${project.artifactId}-${project.version}/download/${project.artifactId}-${project.version}</jarprefix>
</properties>
<!--
<profiles>
<profile>
<id>default-tools.jar</id>
<activation>
<property>
<name>java.vendor</name>
<value>Sun Microsystems Inc.</value>
</property>
</activation>
<dependencies>
<dependency>
<groupId>com.sun</groupId>
<artifactId>tools</artifactId>
<version>1.4.2</version>
<scope>system</scope>
<systemPath>${java.home}/../lib/tools.jar</systemPath>
</dependency>
</dependencies>
</profile>
</profiles>
-->
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<id>attach-artifacts</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>${jarprefix}-all.jar</file>
<type>jar</type>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<!--
This profile will sign the JAR file, sources file, and javadocs file using the GPG key on the local machine.
See: https://docs.sonatype.org/display/Repository/How+To+Generate+PGP+Signatures+With+Maven
-->
<profile>
<id>release-sign-artifacts</id>
<activation>
<property>
<name>release</name>
<value>true</value>
</property>
</activation>
</profile>
</profiles>
</project>
------------------
Полные журналы для mvn deploy
иmvn deploy -e
mvn deploy
вывод:
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building XBN-Java 0.1.2
[INFO] ------------------------------------------------------------------------
[INFO] --- maven-enforcer-plugin:1.0:enforce (enforce-maven) @ xbnjava ---
[INFO] --- build-helper-maven-plugin:1.8:attach-artifact (attach-artifacts) @ xbnjava ---
[INFO] --- maven-install-plugin:2.4:install (default-install) @ xbnjava ---
[INFO] Installing R:\jeffy\programming\sandbox\z__for_git_commit_only\xbnjava\pom.xml to C:\Users\jeffy\.m2\repository\com\github\aliteralmind\xbnjava\0.1.2\xbnjava-0.1.2.pom
[INFO] Installing R:\jeffy\programming\build\xbnjava-0.1.2\download\xbnjava-0.1.2-all.jar to C:\Users\jeffy\.m2\repository\com\github\aliteralmind\xbnjava\0.1.2\xbnjava-0.1.2.jar
[INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ xbnjava ---
Uploading: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom
2/6 KB
4/6 KB
6/6 KB
(Раздел отказов :)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.204 s
[INFO] Finished at: 2014-07-18T11:25:17-04:00
[INFO] Final Memory: 7M/17M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project xbnjava: Failed to deploy artifacts: Could not transfer artifact com.github.aliteralmind:xbnjava:pom:0.1.2 from/to sonatype-nexus-staging (https://oss.sonatype.org/service/local/staging/deploy/maven2/): Failed to transfer file: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom. Return code is: 401, ReasonPhrase: Unauthorized. -> [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/MojoExecutionException
mvn deploy -e
вывод:
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building XBN-Java 0.1.2
[INFO] ------------------------------------------------------------------------
[INFO] --- maven-enforcer-plugin:1.0:enforce (enforce-maven) @ xbnjava ---
[INFO] --- build-helper-maven-plugin:1.8:attach-artifact (attach-artifacts) @ xbnjava ---
[INFO] --- maven-install-plugin:2.4:install (default-install) @ xbnjava ---
[INFO] Installing R:\jeffy\programming\sandbox\z__for_git_commit_only\xbnjava\pom.xml to C:\Users\jeffy\.m2\repository\com\github\aliteralmind\xbnjava\0.1.2\xbnjava-0.1.2.pom
[INFO] Installing R:\jeffy\programming\build\xbnjava-0.1.2\download\xbnjava-0.1.2-all.jar to C:\Users\jeffy\.m2\repository\com\github\aliteralmind\xbnjava\0.1.2\xbnjava-0.1.2.jar
[INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ xbnjava ---
Uploading: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom
2/6 KB
4/6 KB
6/6 KB
(Раздел отказов :)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.492 s
[INFO] Finished at: 2014-07-18T11:25:37-04:00
[INFO] Final Memory: 7M/17M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project xbnjava: Failed to deploy artifacts: Could not transfer artifact com.github.aliteralmind:xbnjava:pom:0.1.2 from/to sonatype-nexus-staging (https://oss.sonatype.org/service/local/staging/deploy/maven2/): Failed to transfer file: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom. Return code is: 401, ReasonPhrase: Unauthorized. -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project xbnjava: Failed to deploy artifacts: Could not transfer artifact com.github.aliteralmind:xbnjava:pom:0.1.2 from/to sonatype-nexus-staging (https://oss.sonatype.org/service/local/staging/deploy/maven2/): Failed to transfer file: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom. Return code is: 401, ReasonPhrase: Unauthorized.
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:347)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:154)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:213)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:157)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to deploy artifacts: Could not transfer artifact com.github.aliteralmind:xbnjava:pom:0.1.2 from/to sonatype-nexus-staging (https://oss.sonatype.org/service/local/staging/deploy/maven2/): Failed to transfer file: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom. Return code is: 401, ReasonPhrase: Unauthorized.
at org.apache.maven.plugin.deploy.DeployMojo.execute(DeployMojo.java:193)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
... 19 more
Caused by: org.apache.maven.artifact.deployer.ArtifactDeploymentException: Failed to deploy artifacts: Could not transfer artifact com.github.aliteralmind:xbnjava:pom:0.1.2 from/to sonatype-nexus-staging (https://oss.sonatype.org/service/local/staging/deploy/maven2/): Failed to transfer file: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom. Return code is: 401, ReasonPhrase: Unauthorized.
at org.apache.maven.artifact.deployer.DefaultArtifactDeployer.deploy(DefaultArtifactDeployer.java:143)
at org.apache.maven.plugin.deploy.AbstractDeployMojo.deploy(AbstractDeployMojo.java:167)
at org.apache.maven.plugin.deploy.DeployMojo.execute(DeployMojo.java:149)
... 21 more
Caused by: org.eclipse.aether.deployment.DeploymentException: Failed to deploy artifacts: Could not transfer artifact com.github.aliteralmind:xbnjava:pom:0.1.2 from/to sonatype-nexus-staging (https://oss.sonatype.org/service/local/staging/deploy/maven2/): Failed to transfer file: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom. Return code is: 401, ReasonPhrase: Unauthorized.
at org.eclipse.aether.internal.impl.DefaultDeployer.deploy(DefaultDeployer.java:337)
at org.eclipse.aether.internal.impl.DefaultDeployer.deploy(DefaultDeployer.java:268)
at org.eclipse.aether.internal.impl.DefaultRepositorySystem.deploy(DefaultRepositorySystem.java:413)
at org.apache.maven.artifact.deployer.DefaultArtifactDeployer.deploy(DefaultArtifactDeployer.java:139)
... 23 more
Caused by: org.eclipse.aether.transfer.ArtifactTransferException: Could not transfer artifact com.github.aliteralmind:xbnjava:pom:0.1.2 from/to sonatype-nexus-staging (https://oss.sonatype.org/service/local/staging/deploy/maven2/): Failed to transfer file: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom. Return code is: 401, ReasonPhrase: Unauthorized.
at org.eclipse.aether.connector.wagon.WagonRepositoryConnector$6.wrap(WagonRepositoryConnector.java:1016)
at org.eclipse.aether.connector.wagon.WagonRepositoryConnector$6.wrap(WagonRepositoryConnector.java:1004)
at org.eclipse.aether.connector.wagon.WagonRepositoryConnector$PutTask.run(WagonRepositoryConnector.java:895)
at org.eclipse.aether.connector.wagon.WagonRepositoryConnector.put(WagonRepositoryConnector.java:522)
at org.eclipse.aether.internal.impl.DefaultDeployer.deploy(DefaultDeployer.java:331)
... 26 more
Caused by: org.apache.maven.wagon.TransferFailedException: Failed to transfer file: https://oss.sonatype.org/service/local/staging/deploy/maven2/com/github/aliteralmind/xbnjava/0.1.2/xbnjava-0.1.2.pom. Return code is: 401, ReasonPhrase: Unauthorized.
at org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.put(AbstractHttpClientWagon.java:573)
at org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.put(AbstractHttpClientWagon.java:493)
at org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.put(AbstractHttpClientWagon.java:474)
at org.apache.maven.wagon.providers.http.AbstractHttpClientWagon.put(AbstractHttpClientWagon.java:454)
at org.eclipse.aether.connector.wagon.WagonRepositoryConnector$PutTask.run(WagonRepositoryConnector.java:871)
... 28 more
[ERROR]
[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/MojoExecutionException
Ответы:
У меня были похожие ошибки при попытке развернуть артефакт Gradle в репозиторий Nexus Sonatype. Если вы введете неправильные учетные данные (пароль и т. Д.), Вы получите ошибку 401 Несанкционированный доступ. Вы также получаете сообщение об ошибке (и, в первую очередь, это 401), если вы пытаетесь опубликовать что-то в репозитории релизов, и эта версия уже существует в репозитории. Таким образом, вы можете обнаружить, что при публикации из командной строки он работает, но затем, когда вы делаете это из сценария, он терпит неудачу (потому что в первый раз его не было в репозитории). Либо опубликуйте, используя другой номер версии, либо удалите старый артефакт на сервере и повторно опубликуйте.
Репозиторий SNAPSHOTS (в отличие от репозитория релизов) позволяет вам перезаписывать версию с аналогичным номером, но в конце вашего номера версии должно быть «-SNAPSHOT».
источник
0.1.2-SNAPSHOT
, что уже создано, мешает моей новой0.1.2
версии, как вы предлагаете. Изменение его на0.1.0
(«раньше»), или0.1.2a
, или0.1.3
(«позже») приводит к ошибке, с которой я имел дело до этой:[ERROR] Failed to execute goal org.apache.maven.plugins:maven-install-plugin:2.4:install (default-install) on project xbnjava: Failed to install artifact com.github.aliteralmind:xbnjava:jar:0.1.3: R:\jeffy\programming\build\xbnjava-0.1.3\download\xbnjava-0.1.3-all.jar (The system cannot find the path specified) -> [Help 1]
. Я не думал, что вносил какие-либо изменения, но очевидно, что убрать это-SNAPSHOT
из версии было плохо.Одна из причин этой ошибки - когда repositoryId не указан или указан неправильно. Как уже упоминалось, он должен быть таким же, как в разделе settings.xml. Пара подсказок ... Запустите mvn с параметрами -e -X и проверьте вывод отладки. Он сообщит вам, какой репозиторий он использует:
В этом случае он использует значение по умолчанию «удаленный репозиторий», что означает, что что-то пошло не так.
По-видимому, я указал -DrepositoryID (ID заметки заглавными буквами) вместо -DrepositoryId.
источник
settings.xml
я снова сделал оба идентификатора репо идентичными (снимок и выпуск), но затем добавил еще одно объявление с уникальным идентификатором для нашего же репозитория выпуска (в основном псевдоним). Это позволило проектам, которым требовалось уникальное имя, ссылаться на это, и более старым проектам, которые использовали идентичные имена для ссылки на них. Наш мастер-пом относится к идентичным.просто измените их в settings.xml, как говорит aliteralmind:
вам, вероятно, нужно получить имя пользователя / пароль от sonatype dot com.
источник
Я поместил незашифрованный пароль в settings.xml.
Я проверил звонок с помощью curl
и я получил ошибку:
Я получил свой зашифрованный пароль, щелкнув свой профиль артефакта и разблокировав его.
источник
code curl -u username:password --request PUT --data target/api-1.0-SNAPSHOT.jar http://url/artifactory/libs-snapshot-local/com/myproject/api/1.0-SNAPSHOT/api-1.0-20160128.114425-1.jar
вместо этогоТакже был 401 от Nexus. Попробовав все приведенные выше и многие другие предложения безуспешно, я в конце концов обнаружил, что это была настройка Jenkins.
В конфигурации Jenkins для отказавшего проекта у нас есть раздел в действиях «Post Build», озаглавленный «Развернуть артефакты в репозиторий Maven». Здесь есть поле «ID репозитория», для которого задано неправильное значение. Он должен совпадать с идентификатором репозитория в settings.xml, чтобы Jenkins мог читать поля пользователя и пароля:
источник
Как указано в ответе @John, тот факт, что он уже существует
0.1.2-SNAPSHOT
, помешал моей новой версии, отличной от SNAPSHOT0.1.2
. Поскольку401 Unauthorized
ошибка нечеткая и бесполезная - и обычно связана с проблемами пользователя / прохода - неудивительно, что я не смог разобраться в этом самостоятельно.Изменение версии
0.1.3
возвращает меня к исходной ошибке:[ERROR] Failed to execute goal org.apache.maven.plugins:maven-install-plugin:2.4:install (default-install) on project xbnjava: Failed to install artifact com.github.aliteralmind:xbnjava:jar:0.1.3: R:\jeffy\programming\build\xbnjava-0.1.3\download\xbnjava-0.1.3-all.jar (The system cannot find the path specified) -> [Help 1].
Специалист по поддержке сонатипов также порекомендовал мне удалить
<parent>
блок из моего POM (он есть только потому, что он находится в том из ez-vcard , с чего я начал) и заменить свой<distributionManagement>
блок наПосле этого
mvn deploy
в первый раз была загружена одна из моих банок !!!Вывод:
(Успех :)
Вот полностью обновленный POM:
Это одна большая проблема Maven. Осталось еще 627.
источник
Некоторые пользователи могли ошибочно ввести адрес электронной почты вместо имени пользователя. Это может произойти неосознанно, если имя в адресе электронной почты совпадает с именем пользователя.
источник
Это официальное объяснение команды sonatype nexus о 401 - Unauthorized
Я рекомендую вам прочитать Устранение сбоев развертывания артефактов для получения дополнительной информации.
источник
в моем случае после шифрования пароля забыл вставить
settings-security.xml
в ~ / .m2。источник
У нас возникла эта проблема совсем недавно, и мы выяснили, что она связана с версией Maven, которую мы использовали. Мы использовали 3.1.0 и не могли загрузить в нексус, мы продолжали получать 401, мы вернулись к 3.0.3, и проблема исчезла.
Самый простой способ подтвердить это - пройти через версии maven и запустить «mvn deploy» в своем проекте.
Более подробную информацию можно найти здесь: https://issues.apache.org/jira/browse/WAGON-421
источник
Я имел дело с этой работающей Artifactory версии 5.8.4. Функция «Настроить» создаст файл settings.xml следующим образом:
После использования переключателя mvn deploy -e -X я заметил, что учетные данные были неточными. Я удалил $ {security.getCurrentUsername ()} и заменил его своим именем пользователя, удалил $ {security.getEscapedEncryptedPassword ()! ""} И просто поместил свой зашифрованный пароль, который работал у меня:
Надеюсь это поможет!
источник
В Nexus версии 3.13.0-01 поля
id
в разделе POMdistributionManagement/repository
ДОЛЖНЫ соответствоватьservers/server/id
иmirrors/mirror/id
в вашем maven settings.xml. Я просто заменил nexus v3.10.4 (на 3.13.0-01), и он не соответствовал 3.10.4.источник
Была аналогичная проблема. Пришлось привязать плагин развертывания maven к определенной версии в pom.xml:
Эта версия сломала мои сборки:
источник
У меня была такая же ошибка. Все перепробовал и перепроверил. Я был настолько сосредоточен на трассировке стека, что не прочитал последние строки сборки перед сводкой Reactor и трассировкой стека:
Это было ключом: «Не удалось найти метаданные» . Хотя в нем говорилось, что это была ошибка аутентификации, на самом деле ее исправили, выполнив «восстановление метаданных» в репозитории nexus.
Надеюсь, поможет.
источник
Кроме того, после того, как вы обновили идентификаторы репозитория, убедитесь, что вы работаете чисто, так как
release:prepare
будет продолжено с того места, где он остановился. Итак, вы можете:mvn release:prepare -Dresume=false
илиmvn release:clean release:prepare
источник
В windows есть два файла settings.xml.
%MAVEN_HOME%\conf\
%userprofile%\.m2\
Если
%userprofile%\.m2\setting.xml
вступит в силу, maven не получит доступа%MAVEN_HOME%\conf\setting.xml
.источник
Это может быть вызвано неправильной версией, вы можете дважды проверить родительскую версию и версию библиотеки , чтобы убедиться, что они верны и не дублируются, у меня была такая же проблема
источник
Я получил
401
ошибку при использованииmvn gpg:sign-and-deploy-file
команды, и причина заключалась в том, что<MVN_HOME>/conf/settings.xml
не было<server>
тега, который вы можете получить черезhttps://oss.sonatype.org/#profile;User%20Token
where<id>
такое же, как-DrepositoryId
Чтобы
<MVN_HOME>
бежатьmvn --version
источник
В моем случае я удалил учетные данные для входа на сервер для центрального сервера из своих настроек.
Я не знаю, почему я это сделал, но это совершенно неправильно, поскольку к центральному репозиторию maven можно получить доступ анонимно. См. Мои результаты отладки, которые привели к идентификации и разрешению моей ошибки.
источник
Решение:
В этом случае вам нужно изменить версию в pom-файле и попробовать использовать новую версию.
Здесь уже существует 01.16.03, поэтому он не удался, и когда я попробовал с версией 01.16.04, работа прошла успешно.
источник
Я получил ту же ошибку при попытке развернуть в репозиторий Artifactory, следующее решило проблему для меня:
Перейдите к настройке репозитория в artifactory и включите пункт « Принудительная аутентификация Maven », и ошибка 401 «Неавторизованный» должна исчезнуть. (Конечно, вам нужно указать свои учетные данные в файле settings.xml в лучшем случае в виде обычного текста, чтобы предотвратить проблемы )
Я думаю, по умолчанию, даже если вы укажете правильные учетные данные в файле settings.xml, они не используются, и вы получите исключение Unauthorized.
источник