maven私服deploy時報Return code is: 401, ReasonPhrase: Unauthorized

今天deploy一個jar包到私服上時,一直報錯,緣由一大串:apache

Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project ussp-common-parent: Failed to deploy artifacts: Could not transfer artifact com.ussp.common:ussp-common-parent:pom:1.0.0-20190214.060901-540 from/to snapshots (http://192.168.1.45:8081/nexus/content/repositories/snapshots/): Failed to transfer file: http://192.168.1.45:8081/nexus/content/repositories/snapshots/com/ussp/common/ussp-common-parent/1.0.0-SNAPSHOT/ussp-common-parent-1.0.0-20190214.060901-540.pom. Return code is: 401, ReasonPhrase: Unauthorized. -> [Help 1]
[ERROR]

能夠看到最後顯示,返回碼是401,跟受權或權限相關。但是個人settings.xml文件裏面的用戶權限足夠,怎麼還報權限不足呢?我找了一大圈,終於發現是pom.xml文件與settings.xml關於受權相關的配置沒對應起來致使的,下面是我pom中的配置:bash

<distributionManagement>
		<repository>
			<id>releases</id>
			<name>Nexus Release Repository</name>
			<url>http://192.168.1.X:8081/nexus/content/repositories/releases/</url>
		</repository>
		<snapshotRepository>
			<id>snapshots</id>
			<name>Nexus Snapshot Repository</name>
			<url>http://192.168.1.X:8081/nexus/content/repositories/snapshots/</url>
		</snapshotRepository>
</distributionManagement>

下面是我settings.xml的配置:maven

<server>
	<id>nexus-releases</id>
	<username>admin</username>
	<password>admin</password>
	</server>
	<server>
	<id>nexus-snapshots</id>
	<username>admin</username>
	<password>admin</password>
</server>

比較能夠看到 pom中repository和snapshotRepository兩個庫的id沒有與settings.xml中對應起來。修改一致便可發佈成功。url

相關文章
相關標籤/搜索