原文详解:搭建maven私服代理中央仓库(Nexus3.0)
搭建应用场景:
1、公司开发一些公共组件,如何共享给开发组,拷贝下载文件显得繁琐,并经常需要升级。
2、公共服务器组件只限制在内网使用,无法与外部网络交互。
3、需要自动化部署,下载组件。
第一步:确保linux服务器已经安装,jdk,maven
jdk安装命令: yum -y install java-1.8.0-openjdk*maven安装地址:http://maven.apache.org/download.cgi 这里便不再累赘。
第二步:服务器安装Nexus
安装地址:https://www.sonatype.com/download-oss-sonatype
将文件下载至本地,并上传服务器,选择 nexus-3.14.0-04-unix.tar版本
解压: tar -zxvf nexus-3.14.0-04-unix.tar.gz
默认端口8081,可在conf/nexus.properties内更改
项目不建议在root用户启动,修改bin/nexus下RUN_AS_USER=ROOT
启动警告不影响项目运行
启动: [root@izbp1c61wsgbo8nzrtaib7z bin]# ./nexus start WARNING: ************************************************************ WARNING: Detected execution as "root" user. This is NOT recommended! WARNING: ************************************************************ Starting nexus [root@izbp1c61wsgbo8nzrtaib7z bin]#启动完成:访问后台地址http://127.0.0.1:8081这里ip为服务器地址。
默认账户为admin,密码:admin123
默认匿名账户为anonymous:密码:anonymous123
创建私库如下:
选择maven的仓库,需要注意几点:一.component name的一些说明:
1)maven-central:maven中央库,默认从https://repo1.maven.org/maven2/拉取jar
2)maven-releases:私库发行版jar
3)maven-snapshots:私库快照(调试版本)jar
4)maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务。
二.Nexus默认的仓库类型有以下四种:
1)group(仓库组类型):又叫组仓库,用于方便开发人员自己设定的仓库;
2)hosted(宿主类型):内部项目的发布仓库(内部开发人员,发布上去存放的仓库);
3)proxy(代理类型):从远程中央仓库中寻找数据的仓库
(可以点击对应的仓库的Configuration页签下Remote Storage Location属性的值即
代理的远程仓库的路径);
三.Policy(策略):表示该仓库为发布(Release)版本仓库还是快照(Snapshot)版本仓库;
四.Nexus默认的端口是8081,可以在etc/nexus-default.properties配置中修改。
五.Nexus默认的用户名密码是admin/admin123
六.当遇到奇怪问题时,重启nexus,重启后web界面要1分钟左右后才能访问。
七.Nexus的工作目录是sonatype-work(路径一般在nexus同级目录下)
第三步:创建项目仓库:maven(hosted)
第四步:上传本地jar包文件
创建完远端仓库我们需要将,本地文件上传至我们创建的仓库,来进行读取。
至此上传完成后,在本地项目引入即可,点击搜索便可查看jar包和pom文件。
注意:当jar包引用了外部中央仓库,需要将完整的pom文件上传,添加pom文件地址。
第五步:本地项目pom.xml配置
<!--设定主仓库,按设定顺序进行查找,可多设置 -->
<!--maven私服代理中央仓库 -->
<repository>
<id>maven-resource</id>
<name>maven-resource</name>
<url>http://47.98.41.xx:8081/repository/maven-resource/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
id:为仓库设置名字
name:仓库命名
url:仓库地址
再引入pom文件刷新maven就完成了相关配置
<dependency>
<groupId>com.resource.file.plugin</groupId>
<artifactId>resource_file_plugin</artifactId>
<version>1.1.0</version>
</dependency>
groupId:为组件打包上传时自定义
artifactId:相同
version:相同自定义,pom文本自动检索
这里刷新项目,重新下载maven包,便可下载文件包,至此结束。
面向开发需求,记录学习之路。