目录
服务器 安装 jdk-8u381-linux-x64.tar.gz
下载 nexus-3.42.0-01-unix.tar.gz
1、在servers 节点 增加访问nexus 的账号和密码
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 包了。