使用admin账号登录
123
- 点击上边的小齿轮进入配置页面
- 如下图所示为nexus服务器的仓库管理页面
3. 仓库分类描述
3.1 hosted 宿主仓库 - 用户自己上传的代码包仓库
3.2 proxy 代理仓库 - maven中央仓库或者阿里云中央仓库 - 远程连接用
3.3 group 仓库组 - 包含宿主仓库、代理仓库的仓库集合
4. 常用仓库描述,介绍
4.1 maven-snapshots
maven的快照仓库,
主要用来存储发过过程中的一些开发的半成品包,
nexus默认配置
这个仓库的特点是坐标相同版本的包可以任意发,服务器都会存储,
名称的后边会多一个时间戳的标识,
在项目中定位引用 时候nexus会把最新的jar给项目依赖
4.2 maven-releases
maven的正式版本仓库,
nexus默认配置
这里会把自己发送到服务器的项目包存储,比如parent / common等
特点是坐标相同的包服务器只接受一次
名称后边不会引入时间戳
4.3 maven-3rd_part (nexus3.X版本中默认没有这个仓库,需自己新建)
maven的三方依赖jar,例如微信支付的wechat.jar...
4.4 maven-central
maven的默认代理中央仓库
4.5 maven-central-aliyun
(nexus3.X版本中默认没有这个代理仓库,需自己新建)
maven的新建的代理中央仓库
新建这个仓库的目的是需要去中央仓库下载依赖的时候用阿里云的镜像,提升下载速度
4.6 maven_public (仓库组)
maven的默认仓库组
存在的意义是把各个仓库集中管理
简单的描述就是3.1~3.5共计5个仓库,所以会有5个仓库地址,如果在项目中一个一个的去配置会比较繁琐,
所以用仓库组的机制把仓库集中管理,在在项目配置中只配置这个仓库的地址就可以了
5
. 权限、角色、用户的描述及配置
5.1 权限
5.1.1 权限列表,nexus有默认的权限列表
5.1.1.1 nx-all 超级权限,拥有nexus的所有权限
5.1.1.2 nx-blobstores-all -
5.1.1.3 nx-repository-view-*-* -
其中5.1.1.2和5.1.1.3配合可以配置只有用户访问和部署私服的权限
5.2 角色
5.2.1 角色列表
5.2.1.1 nx-admin 服务器管理 (系统默认存在的)
5.2.1.2 nx-anonymous 匿名用户
(系统默认存在的)
5.2.1.3
nx-admin-repo 依赖包管理,查看、上传、下载(自己配置)
5.3 用户
5.3.1 用户列表
5.3.1.1 admin 默认密码admin123,拥有超级管理员权限
5.3.1.2 anonymous 匿名用户,针对没有账号的人,
5.3.1.3 repoadmin (需自己创建) 仓库jar管理用户,拥有
nx-admin-repo(5.2中创建的新角色)角色, 用来管理仓库中的jar包,上传或者下载
说明:
repoadmin是自己创建的用户,方便在maven的settings中上传jar,主要是为了不把admin用户暴露出来
maven的settings配置及maven项目中pom.xml中配置jar上传地址
6. settings
文件的存放在maven文件目录的config中
6.1 本地仓库位置
<localRepository>E:/tool/repo</localRepository>
6.2 nexus用户配置
<server>
<id>nexus</id>
<username>repoadmin</username>
<password>repoadmin123</password>
</server>
6.3 maven中央仓库配置
<mirror>
<id>central</id>
<name>private maven</name>
<url>http://127.0.0.1:8081/repository/maven-public/</url>
<mirrorOf>*</mirrorOf>
</mirror>
<!-- 说明
1. url 为nexus私服仓库的公共仓库组地址
2. mirrorOf 为所有的请求都去nexus私有仓库组去下载相关的依赖
-->
7
. pom.xml配置
project节点中加入以下配置
<
distributionManagement
>
<
repository
>
<
id
>
nexus
</
id
>
<
name
>
Releases
</
name
>
<
url
>
http://127.0.0.1:8081/repository/maven-releases
</
url
>
</
repository
>
<
snapshotRepository
>
<
id
>
nexus
</
id
>
<
name
>
Snapshot
</
name
>
<
url
>
http://127.0.0.1:8081/repository/maven-snapshots/
</
url
>
</
snapshotRepository
>
</
distributionManagement
>
作用是在eclipse中发布jar时使用,稳定版的包和开发版的包区别路径存放
8. jar上传
8.1 开发包,默认后缀为snapshots,
新建的项目版本号都会以snapshots为结尾,如果直接上传的情况下回直接存储在maven-snapshots目录下,
这个目录下同一个坐标的包可能会有不止一个,以时间戳做区分,在项目依赖的时候回直接把最新的jar依赖给项目
8.2 稳定包,把默认后缀的snapshots取消掉,
打包上传到nexus服务器的时候会默认存储在releases仓库中
这个目录下默认一个坐标只允许存在一个jar不会存储相应的时间戳
8.3 三方jar
这个上传无需在eclipse中单独配置,通过命令行的方式直接上传就可以
maven 上传本地jar命令
mvn deploy - 发布jar
mvn source:jar deploy - 发布带源码的jar
maven 上传三方jar命令
mvn deploy:deploy-file --settings D:\software\apache-maven-3.5.0\coeng\settings_localhsot.xml
-DgroupId=com.aaa -DartifactId=datifactId -Dpackaging=jar -Dfile=D:\tool\repo\
three.jar -Durl=http://127.0.0.1:8081/repository/3rd_part/ -DrepositoryId=nexus
deploy:deploy-file 上传文件
--settings maven settings配置文件的路径
-DgroupId
在nexus中jar 的gourpId坐标
-DartifactId
在nexus中jar的artifactId坐标
-Dpackaging
在nexus中的类型
-Dfile
三方jar在本地的存放路径
-Durl
nexus的三方库路径
-DrepositoryId
settings中存放用户名和密码的serverId