Maven企业服务器搭建

因为在公司里开发都是很多个开发人员同时进行开发的,如果同时向Maven的中央类库去更新依赖包,会很占用网络的带宽。所以我们需要在内部局域网搭建一个企业服务器,这个服务器使用Nexus来搭建,搭建好后当工程更新依赖包时会先从企业私服里更新,如果私服里没有的话才去Maven的中央类库更新、下载。

示意图:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_java




搭建Maven的企业私服需要用到Nexus,Nexus可以在官方网站下载:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_服务器_02


官网下载链接:

https://www.sonatype.com/download-oss-sonatype

注意:2.x版本的和3.x版本的nexus安装配置方式不一样,还有一种安装方式是使用exe文件安装的,使用exe文件方式安装的一般是3.0版本的,这里介绍的是2.x版本的安装。




1.配置环境变量:

  将下载好的压缩包解压,然后复制bin目录的路径地址,然后粘贴到path环境变量里:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_重启_03

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_重启_04

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_服务器_05



打开cmd输入nexus出现以下信息表示环境变量配置成功:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_java_06




2.将Java虚拟机的路径配置到wrapper文件里,此文件的路径:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_开发工具_07



maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_依赖包_08





3.打开cmd安装nexus服务器,安装好后启动此服务器,此步骤最好使用管理员身份来启动cmd:

1.nexus install 安装服务器命令

2.nexus start  启动服务器命令

卸载服务命令

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_开发工具_09




4.登录服务器,默认访问路径是:http://localhost:8081/nexus

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_java_10



输入账户密码,默认账户:admin  密码:admin123

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_服务器_11



查看私服地址:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_服务器_12



5.在Maven工程里配置从私服里下载依赖包:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_重启_13




在pom文件里配置好了私服的地址和信息,现在就可以尝试下载一个Hibernate包:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_服务器_14

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_重启_15

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_重启_16




在工程里将Hibernate依赖包下载好后,在私服的页面里也可以看到Public Repositories文件夹下有一个org的文件夹里面也存储了这个依赖包,Public Repositories这个文件夹是用来存储从Maven中央库里缓存下来的依赖包的:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_java_17




以上是我们配置从私服里更新依赖包的方式,这个方式实际上有点麻烦,因为每个工程的pom文件都需要单独去配置,如果有几十个工程就得配置几十次,那么有没有什么方式可以一劳永逸呢?有的,配置Maven的setting文件就可以让Maven工程更新依赖包的时候都固定先去私服里找:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_重启_18



maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_重启_19





配置完成后需要重启Eclipse才能生效,重启完成后再尝试下载一个依赖包看看是否有通过私服来进行下载:

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_开发工具_20

maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_java_21



要记得重启Eclipse,不然所做的修改不会生效,如果重启也不行的话检查一下配置语法是否有写错。


maven中一个服务需要另一个服务的方法可以直接调用吗不想用FeignClient_服务器_22



转载于:https://blog.51cto.com/zero01/1976991