一、环境搭建
1、首先下载nexus-3.13.0-01-unix.tar.gz,然后解压,解压出来后如下图:
其中nexus3.13.001是Nexus的系统文件,
sonatypework是Maven私服的工作目录,我们上传和下载的jar都在这里面
2、修改nexus的运行用户为root和启动时要使用的jdk版本
路径:vim /opt/softwork/nexus3.13.001unix/
nexus3.13.001/
bin/nexus.rc
操作:里面的内容修改为:run_as_user=“root”
新增如下内容:INSTALL4J_JAVA_HOME_OVERRIDE=/opt/softwork/jdk1.8.0_231
3、修改nexus默认端口(可选),以及允许远程机器访问
vim /opt/softwork/nexus-3.13.0-01-unix/nexus-3.13.0-01/etc/nexusdefault.
properties
里面的内容修改为:
application-port=8081
application-host=0.0.0.0
4、配置环境变量:
路径:vim /etc/profile
更新文件:source /etc/profile
5、启动nexus服务
cd /opt/softwork/nexus-3.13.0-01-unix/nexus-3.13.0-01/bin/
./nexus run
启动中看到下图就表示成功了,在root用户下启动会有警告直接忽略就可以了(警告是不推
荐用root用户启动)
6、nexus 操作指令:
./nexus {start|stop|run|run-redirect|status|restart|force-reload}
start:在后台启动服务,不在界面上打印任何启动或者运行时信息(开启后,Web需要等2分钟左右才能访问)
run:启动服务,但是在界面上打印出启动信息以及运行时信息以及日志信息。
stop:关闭服务
status:查看nexus运行状态
restart:重启服务
force-reload:强制重载一遍配置文件,然后重启服务
二、用户创建和权限设置:
第一步:打开远程仓库,使用有配置管理的账户登录,打开设置页面;
第二步:定位到“Security-Anonymous”,将“Allow anonymous users to access the
server”勾选去掉,保存更改。
第三步:定位到“Security-Roles”,新建一个可以访问仓库的角色
第四步:配置角色,添加可访问的仓库,保存角色信息
第五步:定位到“Security-Users”,添加用户
第六步:给新建的用户赋予刚才新建的角色,保存用户。
第七步:用户创建完成
三、软件使用:
1、仓库界面浏览:
浏览器打开地址:http://192.168.20.69:8081/
mavencentral:
中央仓库,这里存放的是中央仓库的jar包;
mavenpublic:
这是一个仓库组,可以把上述的仓库添加到这个仓库组中
mavenreleases:
这是我们上传私服时的仓库,存放的是稳定版本的jar包
mavensnaoshots:
这是我们上传私服时的仓库,是不稳定版本或正在开发的版本
Proxy:代理仓库,代理的apache的仓库和中央仓库,其实就是从apache里取东西,和从中
央仓库取
Group组:作用就是当你不知道这个项目在哪个下面放的话,直接连接group这个路径就可
以了
Hosted:本地仓库,如果你当前项目是snanshots类型的,上传的时候就会放到snanshots
下面,如果是releases类型的就方法相对应的下面
2、maven仓库创建:
a、proxy 代理仓库创建
b、hosted 仓库创建,host仓库这里了两种不同的存储类型
c、group仓库
主要就是把上面三个仓库放到该组里,然后让这个组给外面访问。
3、Web界面Jar包上传:
a、登陆web界面选择Upload选项,选择上传到私有目服务器的仓库
b、填写需要上传的Jar的相关信息,然后Upload,至此上传成功
4、通过命令创建:
例:mvn clean deploy:deploy-file “-DgroupId=io.appium” “-DartifactId=javaclient”
“-Dversion=7.0.0” “-Dpackaging=jar” “-
Dfile=D:\AppiumTest\Maven\repo\io\appium\java-client\7.0.0\java-client-
7.0.0.jar” “-Durl=http://192.168.20.69:9903/repository/Private-hostedrelease/”
“-DrepositoryId=Private-hosted-release”
字段描述:
-DgroupId=xxxxxx 就相当于pom中的groupId
-DartifactId=xxxxxx 就相当于pom中的artifactId
-Dversion=xxxxxx 就相当于pom中的版本号version
-Dpackaging=xxxxxx 就相当于pom中打包方式
-Dfile=xxxxxx 本地环境
-Durl=xxxxxx 上传的url
-DrepositoryId=xxxxxx 对应的是setting.xml 里边的id
注意:改指令需在拥有pom.xml对应的目录下执行。
5、开发时直接上传编译的jar,这里以IDE为例。
第一步:修改maven中的setting.xml,添加如下内容,不同的仓库对应的ID不同,这里也
可以只添加一个仓库。
第二步:修改项目中的Pom.xml文件,添加如下内容:
这里的ID必须与setting.xml中的ID相对应。配置完成后,执行mvn clean deploy,即可上
传。
6、项目中添加私有仓库的依赖:
a、第一步:修改setting.xml文件的远程仓库地址,修改为我们私有的仓库,如下图所示,
这是可以只创意一个仓库地址。其中的ID必须与私有仓库中的ID相同,地址修改为对应的
仓库地址,即可。