内网情况无法下载jar-使用Nexus搭建Maven私服解决

1、Maven介绍

1.说到Maven,做过Java开发的基本上都知道它的作用,为了解决jar包的下载,jar包的依赖关系。
2.具体使用需要下载Maven的客户端,然后需要设置setting文件,改变本地仓库地址,改变远程仓库地址;如果不改变,就是使用的默认的。
3.Maven的下载jar的整个逻辑是先在本地仓库查找jar,如果没有找到对应的jar,就去配置的远程仓库去找jar(需要访问外网),假如还没有找到,说明某些仓库是没有的,可能jar是私有的,可以下载下来,单独导入项目;正常流程如下图
在这里插入图片描述

2、私服介绍

1.情况分析:上面说到Maven去远程仓库找jar,需要访问外网,那么假如工作环境是内网情况,那么本地仓库的jar又不全,那这种情况有两种情况:
第一种就是每个人把本地仓库的jar全部下载全了,一次性拉到内网环境进行使用;
第二种情况就是远程仓库的jar能不能挪到自己的内网环境。

2.然而第一种方式可能不是一劳永逸,另外每个人都去拉一边全部的库,这个拷贝起来,相互分享可能耗时耗力;而第二种方式,虽说不是一劳永逸,但是这种方式,对于一个公司,一个企业来说是件好事,因为公司有了自己的私服,所有的人都连接这个私服去下载,只要有一人下载了其中某个jar,那下次别人需要用的时候就不需要再次去远程下载了;随着时间的推移,公司的私服Maven库会越来越全。

3.对于在内网情况下,利用一台单独的服务器,可以上外网,然后搭建一套私服,那是非常完美的事情。假如环境不允许,也可以将在外网搭建好的私服,下载好的jar一次性导入公司自己的私服,(前期jar不全的情况,可能是要手动维护的)这样即使在内网环境,每个人都不需要用U盘去拷贝所需要的jar,方便,快捷,并且能够统一管理。

3、私服搭建

上面扯了那么多,下面进入正题,maven私服怎么搭建

1)下载Nexus

网站 : http://nexus.sonatype.org/
下载地址:http://www.sonatype.org/nexus/archived/
下载zip包(开发起来比较麻烦)
下载war包 (推荐)
nexus-2.7.0-06.war ---------- 复制任何web服务器中运行 (tomcat/webapps )这里不做讲解,大家应该都会。
在这里插入图片描述
访问私服
在这里插入图片描述
这里有一个默认的用户名和密码是
admin/admin123

2)Nexus 提供仓库列表

进入界面,我们可以看到
在这里插入图片描述
里面默认包含7个仓库配置,四种类型
1.group(仓库组): 一组仓库, 当使用坐标,按照组内顺序查找
2.hosted(宿主) :私服
3.proxy(代理) :私服(通过私服去连接 apache或者 中央仓库)
4.virtual(虚拟) 兼容maven1格式

具体每个是什么意思,见名知意。
另外几个关键词解释一下:
Releases : 指公司内部已经发布正式版本的项目 (自己开发)
Snapshorts : 指公司内部项目还处于测试版本的项目 (自己开发)
3rd party : 私服配置指向第三方仓库 (其它公司私服 )

3)私服安装后配置

找到所在用户下的这个目录,这个目录是Nexus在tomcat中运行后就自动生成的。
(这个目录可以更改的,建议更改一下,不然占用c盘的资源,更改见后面,自己摸索的)
【第一步】indexr 仓库索引 (搜索坐标 就是搜索索引 )
在这里插入图片描述
默认没有任何索引
这个索引的作用是为了在自己配置的私服中搜索的时候下面出现jar的内容。
这个索引是在网上下载的,当自己的库里面jar内容更新了如果之前的索引没有的话,那么在自己配置的私服中搜索新增的jar就搜索不到,只能去下载最新的索引。

【第二步】storage 存放jar包 (就是库)
在这里插入图片描述
这里的文件夹是和界面上的库对应的,首先可以考虑将已有的库文件导入进来,也可以等他慢慢下载,后期如果是内网,需要维护的也就是在这里,前期需要自己手动导入,供团队使用。
【第三步】更改库的路径,重新运行restart tomcat服务器,然后访问页面,你就发现,你可以使用私服了,这一步不操作也可以。
在这里插入图片描述

4)从私服下载文件

将本地的maven的setting文件远程仓库修改
在这里插入图片描述
在这里插入图片描述
上面的路劲和这个保持一致。
然后验证是否生效的方式
1、日志文件sonatype-work/nexus3/log/下 。
2、验证:将maven的setting.xml仓库设置指向私服—>删除本地仓库某个在用的jar—>maven重新import—>服务器上同时查看网络连接可以看到有连接到的地址是否是配置的地址,另外是否有下载速度,另外可以去私服的库里面查看一下下载的文件。

5)私服添加阿里云仓库

在私服平台上面点击添加代理库
在这里插入图片描述
然后需要配置一下远程下载的路径:http://maven.aliyun.com/nexus/content/groups/public/
在这里插入图片描述

6)注意事项和优化

注意事项:
1.这里要修改,自己假如的阿里云的私服和中央仓库,都需要改,默认为true
在这里插入图片描述
2.这样才能自己的私服才能访问远程仓库;改完之后这里需要刷新一下。
在这里插入图片描述
3.这里的一个策略,优化一下下载的顺序,将自己的配置的阿里云的仓库排在前面。阿里的库下载速度比中央仓库要快。
在这里插入图片描述

7)将本地项目发布到私服

这项用的比较少,一些大公司,自己封装的一些jar,这样搞,共享比较好。
【第一步】: 在本地maven 的settings.xml 配置连接私服用户名和密码
sonatype-work\nexus\conf\security.xml 提供私服内部用户名和密码 (密码加密)
内置账户 : admin/admin123
在maven的setting.xml中添加nexus服务器账号:
在这里插入图片描述

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

第二步: 修改工程pom.xml ,让当前的项目可以发布到私服中

在这里插入图片描述

 <distributionManagement>
  	<repository>
  		<id>releases</id><!-- 需要与server中配置的id一致 -->
  		<name>www-releases</name>
  		<url>http://localhost:8081/nexus-2.7.0-06/content/repositories/releases/</url>	
  	</repository>
  	<snapshotRepository>
		<id>snapshots</id><!-- 需要与server中配置的id一致 -->  	
  		<name>www-snapshots</name>
  		<url>http://localhost:8081/nexus-2.7.0-06/content/repositories/snapshots/</url>
  	</snapshotRepository>
  </distributionManagement>

上面的配置中有自己配置的私服的地址
运行 mvn deploy
在这里插入图片描述

个人原创,转载需声明!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
搭建Maven可以使用Sonatype Nexus,它是一个功能强大的仓库管理器,可以帮助我们创建和管理Maven。下面是基于Nexus搭建Maven的详细步骤: 1. 准备环境:首先,确保你已经安装了Java环境,并且可以正常运行MavenNexus软件。 2. 下载和解压缩Nexus软件:从Sonatype官方下载最新版本的Nexus软件,并解压缩到合适的目录中。 3. 启动Nexus使用命令行窗口进入Nexus软件的目录,然后执行 `./bin/nexus start` 命令来启动Nexus务器。 4. 访问Nexus控制台:在浏览器中输入 `http://localhost:8081` 访问Nexus控制台,默认用户名和密码都是 `admin`,登录成功后,可以看到Nexus的管理界面。 5. 创建Maven仓库:在Nexus控制台中,点击左侧菜单的 `Repositories`,然后点击 `Create repository` 来创建新的Maven仓库。根据需要选择 `Hosted repository` 或者 `Proxy repository`,然后填写相应的配置信息,如仓库名称、URL、布局等。 6. 配置Maven项目:在你的Maven项目的pom.xml文件中添加Nexus的配置信息,包括ID、URL等,用来指定将Maven构建输出部署到Nexus仓库中。 7. 部署和使用使用 `mvn deploy` 命令将项目打包并部署到Nexus中,当其他开发人员或者CI/CD务器需要下载依赖时,只需要修改项目的settings.xml文件,指定Nexus的URL和凭据即可。 8. 其他设置:你还可以在Nexus控制台里进行其他设置,比如用户管理、访问控制、仓库代理等。 总结一下,使用Nexus搭建Maven非常简单,只需要几个基本的步骤即可完成。通过搭建Maven,我们可以有效地管理和共享项目的依赖包,提升团队的开发效率和项目的可维护性。这对于生产环境中的项目非常重要。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值