Maven Sonatype Nexus return 401

主要解决Sonatype Nexus return ’401′问题查看maven当前生效的是哪个settings.xml

使用Sonatype把自己android-common的和android-auto-scroll-view-pager等库发布到Maven中央仓库
mvn clean deploy却发现始终401,提示

Java


1

2

3

4

5

6

7


[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy)

on project trinea-android-common: Failed to deploy artifacts: Could not transfer artifact

cn.trinea.android.common:trinea-android-common:pom:4.2.10-20140510.125625-1 from/to

sonatype-nexus-snapshots (https://oss.sonatype.org/content/repositories/snapshots/):

Failed to transfer file: https://oss.sonatype.org/content/repositories/snapshots/

cn/trinea/android/common/trinea-android-common/4.2.10-SNAPSHOT/trinea-android-common-4.2.10-20140510.125625-1.pom.

Return code is: 401, ReasonPhrase: Unauthorized. -> [Help 1]

检查了下

(1) 已添加C:\Users\your-user-name\.m2\settings.xml,并且内容包含

Java


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16


<settings>

...

<servers>

<server>

<id>sonatype-nexus-snapshots</id>

<username>your-jira-id</username>

<password>your-jira-pwd</password>

</server>

<server>

<id>sonatype-nexus-staging</id>

<username>your-jira-id</username>

<password>your-jira-pwd</password>

</server>

</servers>

...

</settings>

(2) 上面的your-jira-id和your-jira-pwd已经替换为自己在https://oss.sonatype.org/上的用户名和密码。

用mvn help:effective-settings查看了下当前生效的settings文件内容,发现并没有上面(1)中添加的内容,怀疑settings文件是否生效了,用mvn -X命令查看如下

Java


1

2

3

4

5

6

7


Java version: 1.7.0_02, vendor: Oracle Corporation

Java home: D:\Program Files\Java\jdk1.7.0_02\jre

Default locale: zh_CN, platform encoding: GBK

OS name: "windows 7", version: "6.1", arch: "x86", family: "windows"

[INFO] Error stacktraces are turned on.

[DEBUG] Reading global settings from D:\Program Files\apache-maven-3.2.1\conf\settings.xml

[DEBUG] Reading user settings from C:\Users\Administrator\.m2\settings.xml

先读的是maven安装目下conf里面的settings.xml,那为什么没生效呢?

直接修改D:\Program Files\apache-maven-3.2.1\conf\settings.xml mvn clean deploy可正常发布

D:\Program Files\apache-maven-3.2.1\conf\settings.xml拷贝到C:\Users\Administrator\.m2\下居然不会提示和已有的settings.xml文件重名冲突,复制两个文件名发现之前新建的文件名为?settings.xml,次奥,网页上复制过来多了个非法字符,并且一般不可见。这样删除?settings.xml这个文件保留settings.xml文件加上配置即可。

PS:
maven-help-plugin是一个小巧的辅助工具,最简单的help:system可以打印所有可用的环境变量和Java系统属性。help:effective-pom和help:effective-settings最为有用。

help:effective-pom用于查看当前生效的POM内容,指合并了所有父POM(包括Super POM)后的XML,所以可用于检测POM中某个配置是否生效

effective-settings可用于查看当前生效的settings.xml文件内容,所以可用于判断某个settings配置是否生效

时间: 2024-11-02 19:30:58

Maven Sonatype Nexus return 401的相关文章

Maven项目无法获取Sonatype Nexus中SNAPSHOT的包

今天在一个Maven项目中调用某个包的SNAPSHOT版本,总是提示找不到该jar包,主仓库使用了局域网中的Sonatype Nexus服务器,项目pom.xml相关配置如下:  <project>    <repositories>      <repository>        <id>nexus</id>        <name>Local Nexus Repository</name>        <u

Maven 使用Nexus创建私服

仓库管理软件:     私服不是Maven的核心概念,它仅仅是一种衍生出来的特殊的Maven仓库      有三种专门的Maven仓库管理软件可以用来帮助大家建立私服:      Apache基金会的Archiva.JFrog的Artifacotory和Sonatype的Nexus,Archiva是开源的,Artifacotory和Nexus的核心也是开源的     Nexus分为开源版和专业版,开源版本基本GPLv3许可证,其特性足以满足大部分Maven用户的需要,特性如下:      较小的

sonatype nexus私服-sonatype nexus服务器连接问题

问题描述 sonatype nexus服务器连接问题 创建nexus私服,用同样账号在本地上可以连接,但是在远程访问过程中可以访问, 但是无法添加或者修改,一旦修改或者添加则会提示连接超时的错误,甚至提示无 法连接服务器.,如何解决 解决方案 可能是没有配置好,用web浏览器能访问么?

项目管理-maven利用nexus配置私服报如下异常如何解决?

问题描述 maven利用nexus配置私服报如下异常如何解决? 先说下开发环境: apache-maven-3.1.1 nexus-2.6.4-02-bundle jdk1.7.0_45 最近开始使用maven构建项目(因为它实在太好用了),不过maven每次构建项目都要依赖中央仓库,这很不合理,所以使用了Nexus搭建了本地仓库,不过本地仓库搭建完成以后运行第一个命令mvn help:system就报了错,利用mvn -e help:system查看报错信息看了半天也没有头绪,下面就是这个报错

sonatype nexus 在局域网内无法访问?

问题描述 sonatype nexus 在局域网内无法访问? 在局域网内的服务器上配置了sonatype nexus, 在浏览器里访问:http://localhost:8081/nexus能正常访问,在其他机器上访问:http://10.12.49.45:8081/nexus无法访问,http://10.12.49.45为局域网内服务器的地址,服务器上的其他服务(tomcat里的项目)通过http://10.12.49.45:8080/项目名/均可以访问,请问大家为什么啊?

Maven使用笔记(五)Sonatype Nexus 搭建Maven 私服

1. 为什么使用Nexus 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地, 而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响项目的进程. 很多情况下项目的开发都是在内网进行的,连接不到maven仓库怎么办呢?开发的公共构件怎么让其它项目使用? 这个时候我们不得不为自己的团队搭建属于自己的maven私服,这样既节省了网络带宽也会加速项目搭建的进程,当然前提条件就是你的私服中拥有项目

Sonatype Nexus 搭建Maven 私服

1. 为什么使用Nexus          如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话,还会影响项目的进程.很多情况下项目的开发都是在内网进行的,连接不到maven仓库怎么办呢?开发的公共构件怎么让其它项目使用?这个时候我们不得不为自己的团队搭建属于自己的maven私服,这样既节省了网络带宽也会加速项目搭建的进程,当然前提条件就是你的私

Maven搭建nexus服务器学习笔记

如果是公司内部开发,一般都是采用私服来作为中央库.而且官方库国内连接速度非常慢,下载速度只有0点几K每秒,让人很抓狂,使用nexus还可以建立中央库的镜像. 一.安装nexus nexus官网:http://www.sonatype.com/nexus/product-overview nexus下载地址:http://www.sonatype.org/nexus/go 这个软件分为多个版本:Nexus OSS.Nexus Pro.Nexus Pro+等.Nexus OSS包含基本仓库管理功能,

Maven配置Nexus

前边简单介绍了Maven,而Maven默认提供的中央仓库是在远程网络服务Appache提供的,这对于我们开发时不合理的.如果我们没网了或者什么情况,我们怎么办?也就是说我们队中央仓库的依赖性太大.而Nexus私服则可以解决我们这个问题.先看下这张图应该大家就非才明白了:     这样就相当于在我们本地的局域网搭建了一个类似中央仓库的服务器,我们开始将中央仓库的一些资料下载到私服务器上,然后平时我们的maven项目就是直接访问局域网内的私服即可,既节省了网络带宽也会加速项目搭建的进程,这样对我们开