一、私服环境搭建及配置
1、Docker search nexus
2、docker pull sonatype/nexus3
3、docker images|grep nexus
4、查看默认登陆密码(修改密码后 该文件将会被删掉)
docker exec -it 528099c655a69ab7610c2c67e85b4e9723a27c2da0bd967c37d1c2af9baa66ef /bin/bash
cd /opt/sonatype/sonatype-work/nexus3/
5、打开浏览器
访问
http://192.168.50.100:8081/
登陆 输入用户名
amdin/c508c03f-0c5e-4ae8-a728-27128954b4ec
然后修改密码
6、创建本地存储库
7、创建仓库
1)maven-central:maven中央库,默认从
https://repo1.maven.org/maven2/拉取jar
2)maven-releases:私库发行版jar
3)maven-snapshots:私库快照(调试版本)jar
4)maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml中使用
nexus默认存在的仓库类型有以下四种
1)group(仓库组类型):又叫组仓库,用于方便开发人员自己设定的仓库;
2)hosted(宿主类型):内部项目的发布仓库(内部开发人员,发布上去存放的仓库);
3)proxy(代理类型):从远程中央仓库中寻找数据的仓库(可以点击对应的仓库的Configuration页签下Remote Storage Location属性的值即被代理的远程仓库的路径);
4)virtual(虚拟类型):虚拟仓库(这个基本用不到,重点关注上面三个仓库的使用)
Policy(策略)
表示该仓库为发布(Release)版本仓库还是快照(Snapshot)版本仓库;
Public Repositories下的仓库
1)3rd party: 无法从公共仓库获得的第三方发布版本的构件仓库,即第三方依赖的仓库,这个数据通常是由内部人员自行下载之后发布上去;
2)Apache Snapshots: 用了代理ApacheMaven仓库快照版本的构件仓库
3)Central: 用来代理maven中央仓库中发布版本构件的仓库
4)Central M1 shadow: 用于提供中央仓库中M1格式的发布版本的构件镜像仓库
5)Codehaus Snapshots: 用来代理CodehausMaven 仓库的快照版本构件的仓库
6)Releases: 内部的模块中release模块的发布仓库,用来部署管理内部的发布版本构件的宿主类型仓库;release是发布版本;
Snapshots:发布内部的SNAPSHOT模块的仓库,用来部署管理内部的快照版本构件的宿主类型仓库;snapshots是快照版本,也就是不稳定版本
8、创建releases库
9、创建Snapshots库
10、创建中央仓库
国外的中央仓下载比较慢,可以使用国内的中央仓,如下所示:
1、
http://www.sonatype.org/nexus/ 私服nexus工具使用
2、http://mvnrepository.com/ (推荐)
3、
http://repo1.maven.org/maven2
4、
http://maven.aliyun.com/nexus/content/groups/public/ 阿里云 )
5、
http://repo2.maven.org/maven2/ 私服nexus工具使用
6、
http://uk.maven.org/maven2/
7、
http://repository.jboss.org/nexus/content/groups/public
8、
http://maven.oschina.net/content/groups/public/ oschina
9、
http://mirrors.ibiblio.org/maven2/
10、
http://maven.antelink.com/content/repositories/central/
11、
http://nexus.openkoala.org/nexus/content/groups/Koala-release/
11、创建组仓库,命名为owner-group
12、本地maven配置新的nexus仓库地址
复制owner-group的仓库地址
http://192.168.50.100:8081/repository/owner-group/
打卡本地的maven setting文件
配置优先级 pom.xml >
/home_dir/.m2/settings.xml >
/maven_dir/conf/settings.xml
正在下载maven依赖包
二、注意事项
1、手动上传jar包到私服
这里只能上传release版本 不能上传snapshot
mvn deploy:deploy-file -DgroupId=com.chain.xinpools.utils -DartifactId=xinpools-utils -Dversion=1.0-SNAPSHOT -Dpackaging=jar -Dfile=xinpools-utils-1.0-SNAPSHOT.jar -Durl=http://192.168.50.100:8081/repository/owner-snapshots/ -DrepositoryId=owner-snapshots
2、查看当前生效的setting配置
3、文件名称必须为settings.xml
4、idea中对于setting和资源库路径的配置优先级高于setting文件中的配置
5、在pom配置了私服的访问地址 别忘记了 还需要在setting.xml中配置下对该私服的访问权限