一、前置环境准备
1.java环境准备
jdk1.8(下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html)
具体配置参考我另一篇博客:https://www.cnblogs.com/yilichentu/p/12699472.html
2.maven环境准备
apache-maven-3.6(下载地址:http://maven.apache.org/download.cgi)
配置环境变量MAVEN_HOME
配置Path,把%MAVEN_HOME%\bin追加进去,注意需要英文分号隔开
二、Nexus 安装
1.下载Nexus
我这里下载的是OSS版的,可以免费使用,地址:https://sonatype-download.global.ssl.fastly.net/repository/downloads-prod-group/3/nexus-3.30.1-01-win64.zip
下载下来之后解压,得到两个文件夹
2.配置
进入nexus-3.30.1-01/bin目录找到nexus.vmoptions文件
这几个配置根据自己机器来设置
再进入到D:\soft\nexus-3.30.1-windows\nexus-3.30.1-01\etc(nexus-3.30.1-01\etc目录,具体看你自己安装在哪里)
打开nexus-default.properties文件,配置端口号和ip地址
到这里启动的相关配置都配好了,下面是启动服务
3.启动服务
cmd命令进入到nexus-3.30.1-01\bin
然后输入:nexus.exe /install
再输入:nexus.exe /start
查看日志文件输出了这一行,就是启动完成了
日志文件在sonatype-work\nexus3\log下面,主要看nexus.log
到这里nexus服务就启动好了
三、nexus仓库配置
1.登录
打开浏览器输入127.0.0.1:8081(看你上面配置的ip端口号)
然后页面右上角有个sign in
初始账号是:admin
初始密码在:sonatype-work\nexus3\admin.password中(具体看页面上有提示)
2.中央仓库配置阿里云镜像
阿里云中央仓库:http://maven.aliyun.com/nexus/content/repositories/central/
3.配置releases和snapshots为每次deploy覆盖上一个版本
至此nexus都配置好了
四、使用刚搭建的私服
直接上配置,修改settings.xml文件,文件在apache-maven-3.8.1\conf下面(看你自己的maven安装在哪里)
<?xml version="1.0" encoding="UTF-8"?> <!-- for full reference, see also http://maven.apache.org/ref/3.2.3/maven-settings/settings.html --> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <!--自定义本地仓库路径--> <localRepository>D:\soft\repository</localRepository> <!-- 配置Maven服务器的账号信息,自动化部署的时候需要用到 --> <servers> <server> <id>maven-central</id> <!-- 使用公共的developer/password账号进行日常的发布管理 --> <username>你的用户名</username> <password>你的密码</password> </server> <server> <id>maven-public</id> <!-- 使用公共的developer/password账号进行日常的发布管理 --> <username>你的用户名</username> <password>你的密码</password> </server> <server> <id>maven-releases</id> <!-- 使用公共的developer/password账号进行日常的发布管理 --> <username>你的用户名</username> <password>你的密码</password> </server> <server> <id>maven-snapshots</id> <!-- 使用公共的developer/password账号进行日常的发布管理 --> <username>你的用户名</username> <password>你的密码</password> </server> </servers> <!-- 使用Mirror配置节可以强制所有包请求都会被转向内网Nexus服务器的地址 --> <mirrors> <mirror> <id>maven-central</id> <mirrorOf>*,!aliyun,!spring-cloud</mirrorOf> <url>http://ip:port/repository/maven-public/</url> </mirror> <mirror> <id>alimaven-central</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror> <mirror> <id>jboss-public</id> <mirrorOf>central</mirrorOf> <name>JBoss Public Repository Group</name> <url>http://repository.jboss.org/nexus/content/groups/public</url> </mirror> </mirrors> <!-- 这个默认配置决定了我们的Maven服务器开启snapshot配置,否则不能下载SNAPSHOTS的相关资源 --> <profiles> <profile> <id>jdk18</id> <activation> <jdk>1.8</jdk> <activeByDefault>true</activeByDefault> </activation> <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> </profile> <profile> <id>maven-central</id> <repositories> <repository> <id>maven-central</id> <name>maven-central</name> <url>http://ip:port/repository/maven-public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> <updatePolicy>always</updatePolicy> <checksumPolicy>warn</checksumPolicy> </snapshots> </repository> <repository> <id>aliyun</id> <name>aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </repository> <repository> <id>jboss</id> <name>jboss</name> <url>http://repository.jboss.com/maven2/</url> </repository> <repository> <id>spring-cloud</id> <url>http://maven.wso2.org/nexus/content/repositories/wso2-public/</url> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>maven-central</id> <name>maven-central</name> <url>http://ip:port/repository/maven-public/</url> <snapshots>true</snapshots> <releases>true</releases> </pluginRepository> <pluginRepository> <id>repo2</id> <name>repo2</name> <url>http://repo2.maven.org/maven2/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories> </profile> </profiles> <activeProfiles> <activeProfile>maven-central</activeProfile> </activeProfiles> </settings>
项目中pom.xml添加配置
<distributionManagement> <repository> <id>maven-releases</id> <!-- 要跟setting文件中配置的releases的id保持一致--> <name>maven-releases</name> <url>http://ip:port/repository/maven-releases/</url> </repository> <snapshotRepository> <id>maven-snapshots</id> <!-- 要跟setting文件中配置的snapshots的id保持一致--> <name>maven-snapshots</name> <url>http://ip:port/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement>
至此nexus私服的基本搭建及使用就完成了,感觉有帮助的话可以点赞收藏关注哦!