1、web 登录
http://192.168.2.102:8081/
2、Sign in
3、登录
账号:admin
密码:admin123
4、进入设置页面
5、可以添加用户、角色,对接 LDAP 等的设置
6、查看 nexus 的系统信息
7、Browse server contents
8、查看 -> 全局支持模糊查询
9、Browse
10、Upload
11、Blob Stores
文件存储的地方,创建一个目录的话,对应文件系统的一个目录,如图所示
12、Repositories
1)Proxy
这里就是代理的意思,代理中央 Maven 仓库,当 PC 访问中央库的时候,先通过 Proxy 下载到 Nexus 仓库,然后再从 Nexus 仓库下载到 PC 本地。
这样的优势只要其中一个人从中央库下来了,以后大家都是从 Nexus 私服上进行下来,私服一般部署在内网,这样大大节约的宽带。
2)Hosted
Hosted 是宿主机的意思,就是怎么把第三方的 Jar 放到私服上。
Hosted 有三种方式,Releases、SNAPSHOT、Mixed
Releases: 一般是已经发布的 Jar 包
Snapshot: 未发布的版本
Mixed:混合的
Hosted 的创建和 Proxy 是一致的
注意事项:
Deployment Pollcy: 需要把策略改成 “Allow redeploy”。
3)Group
能把两个仓库合成一个仓库来使用
13、创建 proxy 类型 Repositories
(1)Create Repositories
(2)选择创建的类型
(3)填写详细信息
Name:就是为代理起个名字
Remote Storage: 代理的地址,Maven 的地址为: https://repo1.maven.org/maven2/
Blob Store: 选择代理下载包的存放路径
14、创建 hosted 类型 Repositories
注意事项:
Deployment Pollcy: 需要把策略改成 “Allow redeploy”。
15、Security 主要是用户、角色、权限的配置
16、Support 主要 包含日志及数据分析
17、代理中央仓库
只要在 PMO 文件中配置私服的地址(比如 http://192.168.1.14:8081)即可,配置如下
<repositories>
<repository>
<id>maven-central</id>
<name>maven-central</name>
<url>http://192.168.1.14:8081/repository/maven-central/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
18、SNAPSHOT 包的管理
1)修改 Maven 的 settings.xml 文件,加入认证机制
<servers>
<server>
<id>nexus</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
2)修改工程的 Pom 文件
<distributionManagement>
<snapshotRepository>
<id>nexus</id>
<name>Nexus Snapshot</name>
<url>http://192.168.1.14:8081/repository/maven-snapshots/</url>
</snapshotRepository>
<site>
<id>nexus</id>
<name>Nexus Sites</name>
<url>dav:http://192.168.1.14:8081/repository/maven-snapshots/</url>
</site>
</distributionManagement>
注意事项:上面修改的 Pom 文件中的name名字要跟 / usr/local/maven/conf/settings.xml 文件中的名字一定要对应上
19、上传到 Nexus 上
(1)项目编译成的 jar 是 Snapshot(POM 文件的头部)
<groupId>com.victor</groupId>
<artifactId>test-nexus</artifactId>
<version>1.0.0-SHAPSHOT</version>
<packaging>jar</packaging>
使用 mvn deploy 命令运行即可
因为 Snapshot 是快照版本,默认他每次会把 Jar 加一个时间戳,做为历史备份版本。
(2)RELEASES 包的管理
1)与 Snapshot 大同小异,只是上传到私服上的 Jar 包不会自动带时间戳
2)与 Snapshot 配置不同的地方,就是工程的 PMO 文件,加入 repository 配置
<distributionManagement>
<repository>
<id>nexus</id>
<name>Nexus Snapshot</name>
<url>http://192.168.1.14:8081/repository/maven-releases/</url>
</repository>
</distributionManagement>
3)打包的时候需要把 Snapshot 去掉
<groupId>com.victor</groupId>
<artifactId>test-nexus</artifactId>
<version>1.0.0</version>
<packaging>jar</packaging>
(3)第三方 JAR 上传到 NEXUS
[root@hadoop102 ~]# mvn deploy:deploy-file -DgroupId=org.jasig.cas.client -DartifactId=cas-client-core -Dversion=3.1.3 -Dpackag
注意事项:
-DrepositoryId=nexus 对应的就是 Maven 中 settings.xml 的认证配的名字。
20、Browse 简式描述
1)maven-central:maven 中央库,默认从 https://repo1.maven.org/maven2/ 拉取 jar
2)maven-releases:私库发行版 jar
3)maven-snapshots:私库快照(调试版本)jar
4)maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地 maven 基础配置 settings.xml 中使用。