目前实现专门的Maven仓库管理软件(Maven私服):
1.Apache的Archiva
2.JFrog的Artifactory
3.Sonatype的Nexus
1、官网下载地址
https://www.sonatype.com/download-oss-sonatype
2、解压
解压下载到的zip文件到指定目录,比如D:\nexus-3.15.2-01-win64
3、运行Nexus服务
打开CMD命令行,切换到目录,比如D:\nexus-3.15.2-01-win64\nexus-3.15.2-01\bin,输入 nexus /run,
等待几分钟后,命令行界面出现如下字样,则表明服务启动成功:
Started Sonatype Nexus OSS 3.15.2-01
4、访问Nexus服务
在浏览器输入http://localhost:8081/,则出现Nexus界面
5、配置更改
1)更改端口号
可在文件D:\nexus-3.15.2-01-win64\nexus-3.15.2-01\etc\nexus-default.properties中,对application-port=8081,进行修改端口号
2)修改nexus3数据以及相关日志的存储位置
对D:\nexus-3.15.2-01-win64\nexus-3.15.2-01\bin\nexus.vmoptions 文件 进行修改
-XX:LogFile=./sonatype-work/nexus3/log/jvm.log
-Dkaraf.data=./sonatype-work/nexus3
-Djava.io.tmpdir=./sonatype-work/nexus3/tmp
3)调整内存参数
修改D:\nexus-3.15.2-01-win64\nexus-3.15.2-01\bin\nexus.vmoptions 文件,比如:
-Xms1200M
-Xmx1200M
-XX:MaxDirectMemorySize=2G
需要依据具体情况进行修改
6、管理员登录
默认的登录账号是:admin/admin123
7、Nexus配置管理
1)仓库类型
有三种类型的仓库类型:
group:是一个仓库组,可包含hosted和proxy两种库,下载时按配置顺序从中依次查找
hosted:一般部署我们自己项目打包的jar,供内部人员下载
proxy:代理远程仓库,maven-central是默认maven中央仓库代理,maven-aliyun是后加的阿里远程库代理,通过代理从远程库中下载的依赖都会被缓存到nexus的proxy库中
2)版本类型
release:专用于部署发布版本的jar
snapshot:专用于部署快照版本的jar,jar都是以-SNAPSHOT结尾,pom中version需以-SNAPSHOT(必须大写)结尾
mixed:可包含release和snapshot版本
3)权限管理
数据权限:repository权限有两种类型:repository admin和repository view,每种类型又有6种权限标识,分别是:*,add,browse、delete、edit、read,*包含其它5种权限,也可以自定义操作标识,正常系统的生成权限足够使用
4)配置阿里代理仓库
Configuration > Repository > Repositories ,选择 Create repository 按钮,Select Recipe 选择 maven2(proxy),
Name 填写 aliyun, URL输入 http://maven.aliyun.com/nexus/content/groups/public/ 其他值默认。
选择Configuration > Repository, 双击 maven-public, 在Group区域将aliyun移到右侧Members, 上移到maven-central的上面, 点击 Save。
5)配置第三方类库
Configuration > Repository > Repositories ,选择 Create repository 按钮,Select Recipe 选择 maven2(hosted),
Name 填写 maven-third-party,其他值默认。
选择Configuration > Repository, 双击 maven-public, 在Group区域将maven-third-party移到右侧Members, 上移到maven-central的上面, 点击 Save。
注:创建hosted类型仓库时,需要将Deployment policy设为Allow redeploy,否则无法部署jar包。
6)Task任务
定时任务Tasks,新建一个Maven-Delete unused SNAPSHOT类型定时任务,定期清理过期不使用快照版依赖,如下图:
7)settings.xml设置
对D:\nexus-3.15.2-01-win64\nexus-3.15.2-01\system\settings.xml文件进行更改。