超详细 nexus linux搭建maven 私有仓库 存储内部jar

目录

服务器 安装 jdk-8u381-linux-x64.tar.gz

服务器 安装nexus

下载 nexus-3.42.0-01-unix.tar.gz

解压并启动nexus

登录地址、用户名和密码

开发 安装maven

配置maven 访问

1、在servers 节点 增加访问nexus 的账号和密码

2、在mirrors 节点配置中心仓库地址

3、profiles 节点 配置 仓库使用权限

4、 activeProfiles 选择对应配置

5、配置idea 打包权限


Nexus

Nexus 是一个强大的 Maven 仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用 Nexus 你可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个 Artifact。Nexus 是一套 “开箱即用” 的系统不需要数据库,它使用文件系统加 Lucene 来组织数据。Nexus 使用 ExtJS 来开发界面,利用 Restlet 来提供完整的 REST APIs。

Nexus 是java 编写的,服务端 需要先安装 jdk,然后再安装nexus。

环境配置: 2cpu4g 内存  linux centos7.9 。

服务器 安装 jdk-8u381-linux-x64.tar.gz

官网下载链接(需要注册才能下载):Java Downloads | Oracle

百度网盘下载:点击跳转链接

下载后保存在 /data/soft 目录,自己可以修改目录,然后执行如下命令

cd /data/soft
tar zxf jdk-8u381-linux-x64.tar.gz -C /usr/local

#java8u381
cd /data/soft
tar zxf jdk-8u381-linux-x64.tar.gz -C /usr/local
echo "export JAVA_HOME=/usr/local/jdk1.8.0_381/" >> /etc/profile
echo "export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar" >> /etc/profile
echo "export PATH=$JAVA_HOME/bin:$PATH" >> /etc/profile
ln -sf /usr/local/jdk1.8.0_381/bin/java /usr/bin/java
source /etc/profile

安装完成后,运行命令是否执行成功

java -version

显示如下命令说明 安装成功 

java version "1.8.0_381"
Java(TM) SE Runtime Environment (build 1.8.0_381-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.381-b09, mixed mode)

服务器 安装nexus

在公司开发测试过程中,有些公共的jar包需要抽离出来,作为我们框架的基本子模块
允许上传和下载私有库,并且不被外部访问,安全稳定 。

下载 nexus-3.42.0-01-unix.tar.gz

wget https://download.sonatype.com/nexus/3/nexus-3.42.0-01-unix.tar.gz

解压并启动nexus

cd nexus-3.42.0-01

# 查看帮助命令,建议不要使用root 用户启动
./bin/nexus 
WARNING: ************************************************************
WARNING: Detected execution as "root" user.  This is NOT recommended!
WARNING: ************************************************************
Usage: ./bin/nexus {start|stop|run|run-redirect|status|restart|force-reload}

su 普通用户

#启动

./bin/nexus start


登录地址、用户名和密码

启动后,默认端口 是 8081 

访问地址是: http://ip:8081 

默认账号: admin

密码(默认密码存放在): cat /nexus/sonatype-work/nexus3/admin.password

登录后请修改密码

登录后,可以看到右边的设置按钮,点击后,可以看到左边的 Repositories,

点击Repositories 后,可以看到对应的仓库。

maven-central: 默认指向 mvn 中心仓库(Central Repository

maven-public : 开发人员访问的公共仓库

maven-releases:内部包发布的稳定版本

maven-snapshots: 内部开发测试版本

国内可以配置阿里云的mvn 地址

https://maven.aliyun.com/repository/central

首先点击新增 Proxy maven

选择 maven2(proxy)

​ 

填写阿里云资源库

其余默认,选择创建

​ 

 创建完成后,需要将阿里云加到 maven-public 中

查找包的顺序是 maven-releases -> maven-snapshots -> aliyun -> maven-central。 

开发 安装maven

下载maven : Index of /dist/maven/maven-3, 建议下载 直接打包好的二进制包

提示:

http访问nexus ,请使用apache-maven-3.6.3-bin.tar.gz

https访问nexus ,可以使用apache-maven-3.8.4-bin.tar.gz

我这里使用mac,我下载到 /user/local 目录,解压后 直接配置环境变量,为了让环境变量生效,使用source 


cd /user/local/

//下载二进制包
wget https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz

//解压
tar zxf apache-maven-3.6.3-bin.tar.gz

//配置环境变量

echo "export MAVEN_HOME=/usr/local/apache-maven-3.6.3" >> ~/.zshrc

source ~/.zshrc

在idea 中配置maven

​ 

配置完成后,需要配置maven 访问 nexus

配置maven 访问

编辑:/usr/local/apache-maven-3.6.3/conf/settings.xml

注意:一定要小心 xml 的格式,如果配置错误,无法访问nexus,如果出现 401 Authorization failed, 一定是你的XML 配置出问题,或者是 nexus 账号和密码有问题。

1、在servers 节点 增加访问nexus 的账号和密码

        需要在nexus 上添加账号和密码

 

 

将上面创建的 ID和Password 填写在下边的 username 和 password 中

  <servers>
   <server>
        <id>maven-public</id>
        <username>develop</username>
        <password>develop</password>
        </server>
    <server>
        <id>maven-releases</id>
        <username>develop</username>
        <password>develop</password>
	</server>
    <server>
        <id>maven-snapshots</id>
        <username>develop</username>
        <password>develop</password>
    </server>   
  </servers>

2、在mirrors 节点配置中心仓库地址

  <mirrors>
    <mirror>
	<id>maven-public</id>
	<mirrorOf>*</mirrorOf>
	<url>http://4.11.12.34:8081/repository/maven-public</url>
    </mirror>
  </mirrors>

3、profiles 节点 配置 仓库使用权限

  <profiles>
    <profile>
        <id>my-profile</id>
        <properties>
          <maven.compiler.source>1.8</maven.compiler.source>  
          <maven.compiler.target>1.8</maven.compiler.target>  
          <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
        </properties>
        <!-- 远程仓库列表 maven用来填充构建系统本地仓库所使用的一组远程仓库 -->
       <repositories>
	<repository>
            <id>maven-public</id>
            <url>http://4.11.12.34:8081/repository/maven-public</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
          </repository>

          <repository>
            <id>maven-releases</id>
            <url>http://4.11.12.34:8081/repository/maven-releases</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
          </repository>
 
          <repository>
            <id>maven-snapshots</id>
            <url>http://4.11.12.34:8081/repository/maven-snapshots</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
          </repository>
      </repositories>
 
    <pluginRepositories>
      <pluginRepository>
        <id>maven-public</id>
        <url>http://4.11.12.34:8081/repository/maven-public</url>
      </pluginRepository>
    </pluginRepositories>
    
    </profile>

  </profiles>

4、 activeProfiles 选择对应配置

  <activeProfiles>
    <activeProfile>my-profile</activeProfile>  
    <activeProfile>alwaysActiveProfile</activeProfile>
    <activeProfile>anotherAlwaysActiveProfile</activeProfile>
  </activeProfiles>
  

5、配置项目pom.xml  deploy

在对应子模块的pom.xml 文件 project 节点下 增加 distributionManagement 节点

    <distributionManagement>
        <repository>
            <id>maven-releases</id>
            <url>http://4.11.12.34:8081/repository/maven-releases/</url>
        </repository>
        <snapshotRepository>
            <id>maven-snapshots</id>
            <url>http://4.11.12.34:8081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

配置完成后,就可以从nexus 中上传或下载 jar 包了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值