使用Nexus搭建Maven私服可以帮助团队内部或者企业方便地管理Maven依赖,提高构建的可重复性和稳定性。下面我将为大家详细讲解使用Nexus搭建Maven私服的方法步骤:
一、环境要求
在安装和配置Nexus之前,确保已满足以下要求:
-
Java 8或更高版本已安装并配置好JAVA_HOME环境变量。
-
为Nexus指定一个非root用户。
shell
sudo useradd -m nexus
- 关闭防火墙或开启对应端口(默认端口8081)。
shell
sudo ufw disable
二、安装Nexus
-
下载Nexus:https://www.sonatype.com/download-nexus-repo-oss
-
解压:
shell
tar -xjf nexus-3.36.0-01-unix.tar.gz
- 将解压后的nexus-3.36.0-01目录移动到 /opt 目录下:
shell
sudo mv nexus-3.36.0-01 /opt/nexus
- 将Nexus授权给nexus用户:
shell
sudo chown -R nexus:nexus /opt/nexus
- 启动Nexus服务,执行以下命令:
shell
sh /opt/nexus/bin/nexus run
执行成功后,通过访问 http://localhost:8081/nexus/ 验证是否能够成功访问。
三、配置Nexus
要将Nexus用作Maven私服,需要在Nexus Web界面中进行一些配置。
- 配置Maven Central仓库
在Nexus首页,访问“Repositories”菜单下的“Maven Central”仓库,将其“Proxy”,并保存。
- 创建Maven仓库
在Nexus首页,访问“Repositories”菜单下的“Create Repository”创建Maven仓库。设置Group、Name、Version policy和Deployment policy和其他相关配置(如有需要)。
- 配置Maven设置
为了使用我们刚刚创建的私有仓库,请确保您的Maven安装设置中包含下面这段XML代码。
xml
<settings>
<mirrors>
<mirror>
<id>nexus</id>
<name>nexus</name>
<url>http://localhost:8081/repository/maven-releases/</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
</settings>
当您使用Maven命令构建或运行项目时,Maven将从私有仓库中检索依赖项。
四、使用私有仓库
当您对项目进行构建时,添加以下内容以将Maven发送到Nexus。
<repositories>
<repository>
<id>nexus</id>
<url>http://localhost:8081/repository/maven-releases/</url>
</repository>
</repositories>
然后,您只需在pom.xml文件中指定所需的依赖关系即可。
至此,使用Nexus搭建Maven私服的方法步骤已经讲解完毕。
下面提供2条示例:
示例一:添加Maven依赖
在pom.xml中添加需要的依赖项:
<dependency>
<groupId>com.example</groupId>
<artifactId>myproject</artifactId>
<version>1.0.0</version>
</dependency>
示例二:上传Maven构建产物
在Maven构建完成后,使用Maven Deploy Plugin上传构建产物到私服。
<distributionManagement>
<repository>
<id>my-nexus-repo</id>
<url>http://localhost:8081/repository/maven-releases/</url>
</repository>
</distributionManagement>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
</plugins>
</build>
执行以下命令来上传构建产物:
mvn deploy
以上两个示例可根据实际情况进行调整。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Nexus搭建Maven私服的方法步骤 - Python技术站