1.环境准备
1 2 3 4 5 |
JDK必须已经安装,安装方法自行搜索 安装包下载: 链接:https://pan.baidu.com/s/1-LqM3keG5eCd0r8Pn3f_lw 提取码:0zu5 |
2.安装
下载后二进制包进行解包后包括两个文件夹如下:
1 2 3 4 |
mkdir -p /usr/local/nexus/ tar -xzvf nexus-3.19.1-01-unix.tar.gz -C /usr/local/nexus/ 重命名nexus-3.16.1-02 为 nexus cd /usr/local/nexus/ && mv nexus-3.19.1-01 nexus |
3.配置启动用户
1 2 3 |
#useradd -s /sbin/nologin nexus useradd nexus chown -R nexus:nexus /usr/local/nexus/ |
1 2 3 |
vim /usr/local/nexus/nexus/bin/nexus.rc run_as_user="nexus" |
修改jdk环境变量
1 2 3 |
vim /usr/local/nexus/nexus/bin/nexus INSTALL4J_JAVA_HOME_OVERRIDE=/opt/jdk1.8.0/ |
注意这里的Nexus 3++版本 必须要大于或者等于Jdk1.8, 否则会报如下错误
1 2 3 4 |
5月 25 23:30:46 minio2 systemd[1]: nexus.service: control process exited, code=exited status=83 5月 25 23:30:46 minio2 nexus[3275]: No suitable Java Virtual Machine could be found on your system. 5月 25 23:30:46 minio2 nexus[3275]: The version of the JVM must be 1.8. 5月 25 23:30:46 minio2 nexus[3275]: Please define INSTALL4J_JAVA_HOME to point to a suitable JVM. |
1 |
这里说的很清楚,必须最低是Jdk1.8。 |
1 2 3 4 |
[root@minio2 ~]# java -version java version "1.8.0_231" Java(TM) SE Runtime Environment (build 1.8.0_231-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.231-b11, mixed mode) |
4.配置环境变量
1 |
注:centos配置环境变量时使用${NEXUS_HOME},必须加大括号 |
1 |
vim /etc/profile |
1 2 |
export NEXUS_HOME=/usr/local/nexus/nexus export PATH=${NEXUS_HOME}/bin:$PATH |
1 |
source /etc/profile |
1 2 3 |
启动: /usr/local/nexus/nexus/bin/nexus start /usr/local/nexus/nexus/bin/nexus stop |
5.添加启动服务[使用服务方式貌似启动不了,正在找原因]
1 |
vim /usr/lib/systemd/system/nexus.service |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
[Unit] Description=nexus service After=network.target [Service] Type=forking LimitNOFILE=65536 User=nexus Group=nexus ExecStart=/usr/local/nexus/nexus/bin/nexus start ExecStop=/usr/local/nexus/nexus/bin/nexus stop Restart=on-failure [Install] WantedBy=multi-user.target |
6.启动服务
1 2 3 4 5 6 |
systemctl enable nexus.service systemctl start nexus.service systemctl status nexus.service systemctl stop nexus.service systemctl daemon-reload |
7. 检查服务
1 |
systemctl status nexus.service |
8. 访问web
1 |
http://192.168.0.66:8081/#browse/search/custom |

1 2 3 4 5 6 7 |
#你的密码在下面这个路径下存放 Your admin user password is located in /usr/local/nexus/sonatype-work/nexus3/admin.password on the server. vim /usr/local/nexus/sonatype-work/nexus3/admin.password 复制密码用于登录,默认用户admin |
nexus的基本使用配置
1.登录后的界面如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
(1)默认仓库说明: maven-central:maven 中央库,默认从 https://repo1.maven.org/maven2/ 拉取 jar maven-releases:私库发行版 jar,初次安装请将 Deployment policy 设置为 Allow redeploy maven-snapshots:私库快照(调试版本)jar maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地 maven 基础配置 settings.xml 或项目 pom.xml 中使用 (2)仓库类型说明: group:这是一个仓库聚合的概念,用户仓库地址选择 Group 的地址,即可访问 Group 中配置的,用于方便开发人员自己设定的仓库。maven-public 就是一个 Group 类型的仓库,内部设置了多个仓库,访问顺序取决于配置顺序,3.x 默认为 Releases、Snapshots、Central,当然你也可以自己设置。 hosted:私有仓库,内部项目的发布仓库,专门用来存储我们自己生成的 jar 文件 snapshots:公司内部测试版本仓库 releases: 公司本地项目发布的正式版本 proxy:代理仓库,用于代理远程的公共仓库,如maven中央仓库,用户连接私服,私服自动去中央仓库下载jar包或者插件。 central:中央仓库 |


2.接下来我们增加一个代理仓库,使用的是阿里云公共仓库。首先点击“Create repository”按钮开始创建一个仓库:

3. 类型选择 maven2(proxy):

4. 配置阿里云地址
1 2 3 4 5 |
url: http://maven.aliyun.com/nexus/content/groups/public/, name 可以随意填(这里我写 aliyun-proxy), #阿里云url可以去这里获取最新的 https://maven.aliyun.com/mvn/guide |

然后点击最下方按钮创建:

5. 阿里云代理仓库创建完毕后,我们编辑 maven-public,将其添加到放入 group 中,并调整优先级,然后保存:


6. 点击 maven-public 条目的 copy 按钮即可拷贝私服地址:

附一:Maven 配置使用私服(下载依赖)
1,基本说明
Maven 配置私服下载有两种方式:
- setting.xml:该文件配置的是全局模式
- pom.xml:该文件的配置的是项目独享模式
1 2 3 |
注意:若 pom.xml 和 setting.xml 同时配置了,以 pom.xml 为准。 当我们在 maven 使用 maven-public 仓库地址的时候,会按照如下顺序访问:本地仓库 --> 私服 maven-releases --> 私服 maven-snapshots --> 远程阿里云 maven 仓库 --> 远程中央仓库。 |
2.通过 setting.xml 文件配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
(1)setting.xml 文件配置样例如下。配置后不需要再配置 pom.xml 文件,即可通过私服下载 jar 依赖包。 <mirrors> <mirror> <!--该镜像的唯一标识符。id用来区分不同的mirror元素。 --> <id>maven-public</id> <!--镜像名称 --> <name>maven-public</name> <!--*指的是访问任何仓库都使用我们的私服--> <mirrorOf>*</mirrorOf> <!--该镜像的URL。构建系统会优先考虑使用该URL,而非使用默认的服务器URL。 --> <url>http://192.168.66.178:8081/repository/maven-public/</url> </mirror> </mirrors> (2)如果我们并没有搭建私服,属于个人开发,那么也可以直接配置使用阿里 云maven 仓库: <mirror> <id>nexus-aliyun</id> <name>Nexus aliyun</name> <mirrorOf>*</mirrorOf> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror> |
3.通过 pom.xml 文件配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
(1)pom.xml 文件配置样例如下。如果我们配置了 pom.xml,则以 pom.xml 为准。 <repositories> <repository> <id>maven-nexus</id> <name>maven-nexus</name> <url>http://192.168.66.178:8081/repository/maven-public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> (2)如果没有私服,我们同样也可以配置阿里云 maven 仓库: <repositories> <repository> <id>maven-aliyun</id> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> <updatePolicy>always</updatePolicy> <checksumPolicy>fail</checksumPolicy> </snapshots> </repository> </repositories> |
附二:Maven 配置使用私服(下载插件)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
下面是一个使用 pom.xml 配置样例: <pluginRepositories> <pluginRepository> <id>maven-nexus</id> <name>maven-nexus</name> <url>http://192.168.66.178:8081/repository/maven-public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories> |
附三:Maven 配置使用私服(发布依赖)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
(1)接着在项目的 pom.xml 文件中加入 distributionManagement 节点:(注意:repository 里的 id 需要和上一步里的 server id (releases)名称保持一致。) <distributionManagement> <repository> <id>releases</id> <name>Releases</name> <url>http://192.168.66.178:8081/repository/maven-releases/</url> </repository> <snapshotRepository> <id>snapshots</id> <name>Snapshot</name> <url>http://192.168.66.178:8081/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement> (2)然后修改 mavensetting.xml 文件,指定 releases 和 snapshots server 的用户名和密码: <servers> <server> <id>releases</id> <username>admin</username> <password>123</password> </server> <server> <id>snapshots</id> <username>admin</username> <password>123</password> </server> </servers> (3)执行 mvn deploy 命令发布: 然后登录 Nexus,查看对应的仓库已经有相关的依赖包了。 |
1 2 3 |
发布到的仓库说明: *若项目版本号末尾带有 -SNAPSHOT,则会发布到 snapshots 快照版本仓库 *若项目版本号末尾带有 -RELEASES 或什么都不带,则会发布到 releases 正式版本仓库 |
- 本文固定链接: https://www.yoyoask.com/?p=5331
- 转载请注明: shooter 于 SHOOTER 发表