> 文章列表 > Maven + Nexus 私有仓库搭建 + 项目推送 + 其他项目拉取(简记)

Maven + Nexus 私有仓库搭建 + 项目推送 + 其他项目拉取(简记)

Maven + Nexus 私有仓库搭建 + 项目推送 + 其他项目拉取(简记)

2022年是比较忙碌的一年,耽误了很多博客积累,这一年开始看的比写得多。后面也发现像原来一样的去写下来的成本太高。后面开始只做一些简记。即减少书写成本,也能巩固知识,提炼精华。

一 、Nexus下载

下载地址:
Nexus

我的是nexus-3.49.0-02版本

二、 Nexus安装

  1. 解压
tar -zxvf nexus-3.49.0-02-unix.tar.gz
  1. 启动
    进入解压后的文件夹,进入bin包,找到启动项,命令
./nexus start

查看状态

./nexus status

如下显示就启动了

Maven + Nexus 私有仓库搭建 + 项目推送 + 其他项目拉取(简记)
启动后,端口默认8081
然后通过访问该端口就可以进入了

http://xxx.xxx.xxx.xxx/8081  xxx部分代表ip地址
  1. 获取密码
    由于我那个版本获取不到管理员密码,所以通过网上修改密码方式找回密码。

停止服务

./nexus stop

找到安装包下的nexus-orient-console.jar并启动

java -jar ./lib/support/nexus-orient-console.jar

连接后会显示如下图所示
Maven + Nexus 私有仓库搭建 + 项目推送 + 其他项目拉取(简记)
然后在这里面连接数据库

connect plocal:/www/nexus/sonatype-work/nexus3/db/security admin admin 注意

注意,我这里写的绝对路径,主要目的连接nexus启动后生成的sonatype-work文件夹中的数据库。路径以自己服务器上的路径为准。
连接成功后显示下图:
Maven + Nexus 私有仓库搭建 + 项目推送 + 其他项目拉取(简记)
然后,在这里修改密码admin123

update user SET password="$shiro1$SHA-512$1024$NE+wqQq/TmjZMvfI7ENh/g==$V4yPw8T64UQ6GfJfxYq2hLsVrBY8D1v+bktfOxGdt4b/9BthpWPNUy/CBk6V9iA0nHpzYzJFWO8v/tZFtES8CA==" UPSERT WHERE id="admin"

Maven + Nexus 私有仓库搭建 + 项目推送 + 其他项目拉取(简记)
最后启动nexus

./nexus start

三、 项目推送

项目写好后进行maven的pom配置

项目,其中,RELEASE后缀代表发行版<groupId>com.xxx</groupId><artifactId>xxxx</artifactId><version>1.0.0-RELEASE</version><packaging>jar</packaging>仓库推送地址, url是nexus仓库中的地址<distributionManagement><snapshotRepository><id>my-snapshots</id><name>My snapshots</name><url>http://xxx.xxx.xxx.xxx:8081/repository/maven-snapshots/</url></snapshotRepository><repository><id>my-releases</id><name>My releases</name><url>http://xxx.xxx.xxx.xxx:8081/repository/maven-releases/</url></repository></distributionManagement>

然后配置maven的settings.xml,将私有仓库的账号密码配置进去。
这里的id和上面仓库推送的id要匹配,连接时才能找到账号密码。

	<server><id>my-releases</id><username>admin</username><password>admin123</password></server><server><id>my-snapshots</id><username>admin</username><password>admin123</password></server>

如果出现了401

出现了401是连接账号密码错误,要么真错了,要么settings.xml没配上。我也出现过,发现是配到settings.xml的注释里面去了,要仔细。

最后执行推送命令

mvn clean deploy

四、 其他项目引用

maven的pom配置仓库地址

		<repository><id>my-public</id><url>http://xxx.xxx.xxx.xxx:8081/repository/maven-public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots></repository>

然后就可以引入依赖了

		<dependency><groupId>com.xxx</groupId><artifactId>xxxx</artifactId><version>1.0.0-RELEASE</version></dependency>

结束