一、nexus安装:

1、获取nexus下载地址:

查询nexus最新版本地址:https://help.sonatype.com/repomanager3/download

当前最新版本为nexus 3.30.0    点击文件获取下载链接:https://download.sonatype.com/nexus/3/latest-unix.tar.gz

不好意思,下载不了:网络连接失败!看来不能直接通过wget直接下载了!

不过我这里有一个3.9.0的版本,需要的可以直接利用百度云盘下载:

链接:https://pan.baidu.com/s/1iC8u52rHvXBG2POFbIJW-g

提取码:nzez

2、使用ssh远程放在指定目录:

[root@bogon ~]# mkdir /usr/local/soft/nexus

[root@bogon ~]# cd /usr/local/soft/nexus

上传nexus安装包:

3、nexus文件解压:

[root@bogon nexus]# tar -zxvf nexus-3.9.0-01-unix.tar.gz

二、nexus配置:

1、修改默认端口号(建议修改,安全起见):

nexus默认的端口号为:8081

编辑nexus-default.properties:

[root@bogon nexus]# vim /usr/local/soft/nexus/nexus-3.9.0-01/etc/nexus-default.properties

光标下移,直到找到application-port=8081 ,键盘输入 “i” 进入编辑状态,修改端口号。键盘按下ESC退出编辑模式,键盘输入“:wq”保存并退出;

2、防火墙开放端口(默认的是8081):

[root@bogon nexus]# firewall-cmd --zone=public --add-port=8081/tcp --permanent

防火墙重起:

[root@bogon nexus]# firewall-cmd --reload

3、设置开机自启动:

编辑nexus.service文件(没有该文件,命令会自动创建)

[root@bogon nexus]# vim /usr/lib/systemd/system/nexus.service

键盘输入 “i” 进入编辑状态,添加一下内容:

[Unit]
Description=nexus service [Service]
Type=forking
LimitNOFILE=65536
ExecStart=/usr/local/soft/nexus/nexus-3.9.0-01/bin/nexus start
ExecReload=/usr/local/soft/nexus/nexus-3.9.0-01/bin/nexus restart
ExecStop=/usr/local/soft/nexus/nexus-3.9.0-01/bin/nexus stop
Restart=on-failure [Install]
WantedBy=multi-user.target

键盘按下ESC退出编辑模式,键盘输入“:wq”保存并退出;

加入开机启动:

[root@bogon nexus]# systemctl enable nexus.service

重新加载配置文件:

[root@bogon nexus]# systemctl daemon-reload

启动命令:

[root@bogon ~]# systemctl start nexus.service

很遗憾,启动报错了,别急看看报错原因:

根据提示查找错误原因:

[root@bogon ~]# systemctl status nexus.service

很遗憾,还是找不到具体的原因,别急,直接打开/var/log/messages文件找找错误信息:

终于找到原因了,原来是jdk版本最低支持1.8的。

4、更换jdk版本:

编辑nexus文件:

[root@bogon ~]# vim /usr/local/soft/nexus/nexus-3.9.0-01/bin/nexus

键盘输入 “i” 进入编辑状态,找到INSTALL4J_JAVA_HOME_OVERRIDE:

放开该行(去掉#),修改为:

INSTALL4J_JAVA_HOME_OVERRIDE=/usr/local/soft/java/jdk1.8.0_161    # 等号后边为jdk安装路径

如下所示:

键盘按下ESC退出编辑模式,键盘输入“:wq”保存并退出;

再次执行重启命令:

[root@bogon ~]# systemctl start nexus.service

查看状态:

[root@bogon ~]# systemctl status nexus.service

三、nexus管理界面的配置:

1、登录系统:

地址:http://ip:8081

账号:damin

密码:admin123

2、设置阿里云镜像仓库:

我们在maven中引用当前nexus私服时,nexus私服如果没有所需要的的jar包,就会去第三方镜像去下载,为了加快下载速度,我们直接在nexus中配置阿里云的镜像。

点击齿轮(Configuration) > Repositories(仓库)后,展示如下图所示:

备注:proxy --- 代理仓库(第三方仓库)  hosted --- 私有仓库(也就是自己的仓库)    group --- 聚合仓库 ( 基本引用都使用这个库)

添加创建阿里云镜像代理库:

(1)点击create repository按钮:

(2)选择maven2(proxy)---maven代理仓库:

(3)命名以及设置阿里云的rep地址:

阿里云的rep地址:https://maven.aliyun.com/repository/public

点击create repositories保存。

(4)添加的阿里云镜像加入到maven-public(聚合库,我们maven引用此库)中:

进入maven-public详情中进行编辑:

点击save进行保存。

四、配置maven的settings.xml和项目中的pom.xml文件关联当前的nexus私服:

1、配置maven的settings.xml:

<servers>
<server>
<!--id 需要和pom.xml的对应(上传jar包使用)-->
<id>maven-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<!--id 需要和pom.xml的对应(上传jar使用)-->
<id>maven-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
<mirrors>
  <!--引用nexus私服的地址(使用maven-public聚合库,也就是在上边配置的聚合库)-->
  <mirror>
    <id>maven-public</id>
    <mirrorOf>central</mirrorOf>
    <url>http://nexus私服:8081/repository/maven-public/</url>
  </mirror>
  <!--备用 以免在外网环境连不上私服-->
  <mirror>
    <id>alimaven</id>
    <mirrorOf>central</mirrorOf>
    <url>https://maven.aliyun.com/repository/public/</url>
  </mirror>
</mirrors>

2、配置项目的pom.xml:

<distributionManagement>
  <repository>
    <!--id 需要和上边的settings中的对应-->
    <id>maven-releases</id>
    <name>maven repository</name>
    <url>http://nexus私服ip:8081/repository/maven-releases/</url>
  </repository>
  <snapshotRepository>
    <!--id 需要和上边的settings中的对应-->
    <id>maven-snapshots</id>
    <name>maven repository</name>
    <url>http://nexus私服ip:8081/repository/maven-snapshots/</url>
  </snapshotRepository>
</distributionManagement>

终于搞完了,试试吧,在项目使用maven deploy打包发布命令,看看能不能上传到自己的nexus私服。

Centos7安装nexus(maven私服)以及maven的相关配置的更多相关文章

  1. CentOS7 安装 Nexus

    CentOS7 安装 Nexus 所需软件包 jdk-8u231-linux-x64.tar.gz nexus-3.24.0-02-unix.tar.gz 创建安装目录 mkdir -p /opt/n ...

  2. 大数据入门:Maven项目的创建及相关配置

    目录 Maven项目的创建及相关配置 一.Maven的介绍 1.Maven是什么: 2.Maven作用: 3.Maven项目的目录结构: 4.Maven的三点坐标: 5.maven的pom文件: 6. ...

  3. CentOS7安装CDH 第十三章:CDH资源池配置

    相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...

  4. centos7安装nexus私服2.14

    今天项目经理叫搭个nexus私服,记录一下 nexus下载比较慢,可在本地下载,然后用sftp上传到linux系统去,下载地址https://www.sonatype.com/download-oss ...

  5. CentOS7安装vsftpd3.0.2、以及虚拟用户配置

    vsftpd(very secure ftp daemon)是一款运行在Linux操作系统上的FTP服务程序,不仅完全开源而且免费,还具有很高的安全性.传输速度,以及支持虚拟用户验证. vsftpd ...

  6. CentOS7下swap分区创建(添加),删除以及相关配置

    在添加swap分区之前我们可以了解下当前系统swap是否存在以及使用情况,可用: 1. free –h 或 swapon –s 了解硬盘使用情况(一般/dev/vda1为挂载硬盘): 1. df –h ...

  7. Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)

    摘要: Web框架概述 Django简介 Django项目创建 Django基础必备三件套(HttpResponse.render.redirect) 一.Web框架概述: Python三大主流Web ...

  8. 掌握 Maven 私服

    前言 在 Java EE 开发中,我们使用 Maven 构建工具主要来管理项目的第三方库的依赖,以及公司内部其他项目服务的依赖.因此 Maven 私服就是必不可少的一环,本文主要对 Maven 私服的 ...

  9. 基于【 Docker】五 || maven私服环境搭建

    1.Maven  Nexus私服的原理 为了节省带宽和时间,在局域网内架设一个私有的仓库服务器,用其代理所有外部的远程仓库.当本地Maven项目需要下载构件时,先去私服请求,如果私服没有,则再去远程仓 ...

随机推荐

  1. 使用 js 实现十大排序算法: 冒泡排序

    使用 js 实现十大排序算法: 冒泡排序 冒泡排序 refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!

  2. The Weekly Web Dev Challenge: String Calculator

    The Weekly Web Dev Challenge: String Calculator https://twitter.com/intent/tweet?text=I just complet ...

  3. Python3 & Decorators with arguments & @Decorators with arguments bug

    Python3 & Decorators with arguments & @Decorators with arguments bug @Decorators with argume ...

  4. how to copy to clipboard using windows cmd

    how to copy to clipboard using windows cmd Windows clipboard command line https://www.labnol.org/sof ...

  5. ts 索引签名 无视多余的属性类型

    interface SquareConfig { color?: string; width?: number; [propName: string]: any; } function asd(opt ...

  6. better-scroll使用参考

    ************better-scroll是基于父元素固定高度,溢出才滚动的,所以父元素务必定高,否则无法滚动***************************************** ...

  7. Nestjs 验证对象数组

    route @Patch(':id') patch(@Param('id') id: string, @Body() removeEssayDto: RemoveEssayDto) { return ...

  8. 面试必知:String、StringBuilder、StringBuffer的区别

    你知道String.StringBuilder.Stringbuffer的区别吗?当你创建字符串的时候,有考虑过该使用哪个吗? 别急,这篇文章带你解决这些问题. 可变性 首先,String是字符串,我 ...

  9. vue页面嵌套其他页面判断是否生产https

    if (location.protocol.indexOf('https') > -1) { var oMeta = document.createElement('meta'); oMeta. ...

  10. 搭载华为麒麟9000的Mate X2:秒售罄,一机难求

    本文首发 | 公众号:lunvey 昨日10点,搭载了麒麟9000芯片的华为Mate X2正式开售,定价17999,对于手机来说,价格实在是高昂. 虽然价格高昂,但是一分钱一分货,对于想抢先体验的网友 ...