今天deploy项目时,maven报错401,百度了一下,找到以下文章,解决了问题,所以就考了过来。
源地址是:http://www.netingcn.com/maven-deploy-nexus.html
首先在Nexus中创建一个自己私有的仓库,步骤为Repositories –> Add –> Hosted Repository,在页面的下半部分输入框中填入Repository ID和Repository Name即可,比如分别填入myrepo和 my repository,点击save就创建完成了。
如果要把构建部署至私服中,需要在构建的 pom.xml 文件增加 distributionManagement 配置项,有多种协议可以用来部署构建,这里主要讲两种。
第一种配置如下:
<project>
[...]
<distributionManagement>
<repository>
<id>myrep</id>
<name>my repository</name>
<url>file:/usr/local/mvn-private-server/nexus-oss-webapp-1.9.2.3/./../sonatype-work/nexus/storage/myrep/</url>
</repository>
</distributionManagement>
[...]
</project>
说明:其中id就是需要部署构建的仓库Id,name似乎不重要,可以随便输入,url就是仓库的configuration中Default Local Storage Location项的对应的信息。采用此种方法,服务器不会对部署操作进行认证,同时配置也把仓库的物理存储地址完全暴露,感觉不是太好。
第二种配置如下:
<project>
[...]
<distributionManagement>
<repository>
<id>tagphi</id>
<url>http://nexus-server-ip:8081/nexus/content/repositories/myrep</url>
</repository>
</distributionManagement>
[...]
</project>
说明:上述的distributionManagement信息可以在对于的仓库的Summary中找到。
配置好后,此时执行mvn deploy,部署应该不会成功,根据提示信息,重新执行 mvn deploy -e 或 mvn deploy -X,此时能看到具体的错误信息,报Return code is: 401错,这个是因为发布者没有权限,需要把用户认证信息配置在maven的settings.xml中,该文件在mavne安装包下的conf目录下,这是一个全局配置,同时可以把该文件复制到 userdir/.m2 目录下,这样配置就只对当前用户生效。在settings.xml文件中servers段中添加如下信息
<server>
<id>myrep</id>
<username>deployment</username>
<password>password</password>
</server>
其中id就是部署仓库的id,username是作为部署用户,Nexus系统默认的deployment,密码为deployment123,可以在security — users中找到,如果需要设置密码,在用户列表中找到该用户,在该用户上点击右键,会出来一个菜单供重置密码或修改密码。此时在执行 mvn deploy,应该可以看到成功发布了。当第二次执行 mvn deploy 又失败,这次失败原因是Return code is: 400,该错误的原因是在创建仓库时在configuration中的Deployment Policy设置为了Disable Redeploy,修改为Allow Redeploy即可。
分享到:
相关推荐
maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装...
Maven 仓库是项目中依赖的第三方库,这个库所在的位置叫做仓库。 在 Maven 中,任何一个依赖、插件或者项目构建的输出,都可以称之为构件。 Maven 仓库能帮助我们管理构件(主要是JAR),它就是放置所有JAR文件...
maven 常见错误集合
一键删除maven本地仓库中下载错误的jar包资源(以lastUpdated结尾的文档)
Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令Maven 命令
maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0maven3.0
Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven...
maven 工具 maven 工具 maven 工具 maven 工具 maven 工具
maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程maven教程
maven
apache-maven-3.0.5 apache-maven-3.1.1 apache-maven-3.2.5 apache-maven-3.3.9 apache-maven-3.5.4 apache-maven-3.6.3 apache-maven-3.8.5 每个版本包含4个文件: apache-maven-3.8.5-bin.tar.gz apache-maven-...
maven api
主要介绍了maven deploy时报错的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
Maven常用命令 Maven Maven学习
maven3.6maven3.6maven3.6
包内喊有5个文档,包含maven本地搭建,私服搭设,于eclipse集成,创建web项目,创建聚合项目,打包和问题解决说明
apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-...
maven打包 maven打jar包详细步骤
maven教程,目录如下: Maven安装配置 Maven启用代理访问 Maven本地资源库 Maven中央存储库 如何从Maven远程存储库下载? Maven添加远程仓库 Maven依赖机制 定制库到Maven本地资源库 使用Maven创建Java项目 使用...
清楚maven中错误的jar,将地址改成自己maven仓库的地址就可以双击执行就可以了。