一、安装jdk
下载jdk并上传到服务器,我版本是:jdk-8u171-linux-x64.tar.gz
1、检查是否有openjdk
rpm -qa | grep java
有则删除openjdk
rpm -e –-nodeps XXXX_openjdk_XXX
2、进入jdk目录,然后解压
tar -xzvf jdk-8u171-linux-x64.tar.gz
3、使用vim命令打开系统的环境变量配置文件
vi /etc/profile
在profile文件最后追加
## JAVA
export JAVA_HOME=/opt/jdk1.8.0_171
export PATH=$PATH:$JAVA_HOME/bin
/opt/jdk1.8.0_171为我的jdk路径,根据个人安装路径修改
4、生效配置
source /etc/profile
5、验证安装,出现如下图则成功
java -version
二、 安装nexus
1、上传nexus,然后解压,我的目录是/opt
tar -zxvf nexus-3.17.0-01-unix.tar.gz
2、进入bin目录,修改配置修改运行nexus3所使用的用户
vim nexus.rc
3、修改nexus3默认端口
vim /opt/nexus-3.17.0-01/etc/nexus-default.properties
注意防火墙对应的端口放行,不然不能访问
4、修改nexus3数据以及相关日志的存储位置
vim /opt/nexus-3.17.0-01/bin/nexus.vmoptions
5、启动nexus,进入nexus的bin路径
#启动nexus
./nexus start
#查看nexus运行状态
./nexus status
如下图,启动成功
三、相关使用说明
1、登陆,账号:admin,密码:在下图红色标记文件中
2、关闭匿名访问,防止恶意下载jar
3、仓库介绍
只看maven相关的
A、maven-central:这是maven的中心仓库,nexus这里只是做一个代理,最后会转发到maven的central库
B、maven-public:这是一个仓库组,访问这个仓库组的地址其实会访问组内所有仓库
C、maven-releases:这是nexus提供的一个默认的存放release版本jar包的仓库
D、maven-snapshots:这是nexus提供的一个默认的存放snapshot版本jar包的仓库
四、上传jar包
1、上传jar需要认证,在maven的settings.xml文件中配置。
这里配置两个用户,一个部署release类型jar包的,一个是部署snapshot类型jar包的,密码根据自己实际情况配置。
id用于唯一指定一条认证配信息,之后会在pom中使用。
2、接着新建一个quick-start的maven项目,在pom中配置distributionManagement标签,该标签负责描述maven deploy上传远程仓库
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.jhtech</groupId>
<artifactId>mavenTest</artifactId>
<version>1.0-SNAPSHOT</version>
<name>mavenTest</name>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<distributionManagement>
<repository>
<id>release_user</id>
<name>Release Deploy</name>
<url>http://localhost:8081/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshot_user</id>
<name>Snapshot Deploy</name>
<url>http://localhost:8081/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
</project>
这里配置了上传的url,具体的url可以在nexus的仓库浏览界面下点击仓库的url copy获得。使用刚才的两个认证信息,把jar包存在nexus提供的默认仓库下。id对应了setting.xml里配置的信息,name随意。
3、项目中执行,部署jar到nexus上
mvn clean deploy
4、nexus服务器显示对应的jar
五、拉取jar包
1、新建一个maven的quick-start项目,然后需要在pom中加入依赖,并且配置我们的nexus仓库
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.jhtech</groupId>
<artifactId>mavenTest2</artifactId>
<version>1.0-SNAPSHOT</version>
<name>mavenTest2</name>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>com.jhtech</groupId>
<artifactId>mavenTest</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>nexus-public</id>
<name>Nexus Public</name>
<url>http://localhost:8081/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</project>
2、执行命令
mvn clean package
3、本地项目已经有对应jar包