Maven 私有库和本地库的安装与配置 Sonatype Nexus + Maven

    本文原先发表与博客园(http://www.cnblogs.com/libingbin/p/6709702.html ),不过个人博客园已经再也不更新了,原有博文会逐步迁移的。html

 

环境:CentOS 7.0 Final、JDK八、Sonatype Nexus、Mavenweb

虚拟机模拟IP:192.168.16.167vim

备注:root权限用户操做浏览器

前提:已安装 JDK8 并配置好了环境变量oracle

一、下载最新版 Nexus,下载地址: http://www.sonatype.org/nexus/go/app

# wget https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.11.203-bundle.tar.gz

二、解压webapp

# mkdir nexus 
# tar -zxvf nexus-2.11.2-03-bundle.tar.gz -C nexus 
# cd nexus 
# ls 
    nexus-2.11.2-03 sonatype-work 
备注:(一个 nexus 服务,一个私有库目录) 

三、编辑 Nexus 的 nexus.properties 文件,配置端口和 work 目录信息(保留默认便可)tcp

# cd nexus-2.11.2-03 
# ls 
bin conf lib LICENSE.txt logs nexus NOTICE.txt tmp

备注:查看目录结构后,Jetty 运行.net

# cd conf 
# vim nexus.properties 
# Jetty section 
application-port=8081 
application-host=0.0.0.0 
nexus-webapp=${bundleBasedir}/nexus 
nexus-webapp-context-path=/nexus 

# Nexus section 
nexus-work=${bundleBasedir}/../sonatype-work/nexus 
runtime=${bundleBasedir}/nexus/WEB-INF

四、编辑 nexus 脚本, 配置 RUN_AS_USER 参数代理

# vim  /root/nexus/nexus-2.11.2-03/bin/nexus
#RUN_AS_USER= 
改成: 
RUN_AS_USER=root

五、防火墙中打开 8081 端口

# vim /etc/sysconfig/iptables 
添加: 
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8081 -j ACCEPT 
保存后重启防火墙 
# service iptables restart

六、启动 nexus

# /root/nexus/nexus-2.11.2-03/bin/nexus start 
**************************************** 
WARNING - NOT RECOMMENDED TO RUN AS ROOT 
****************************************
Starting Nexus OSS... 
Started Nexus OSS.

 七、浏览器中打开:http://192.168.16.167:8081/nexus/ 

八、登陆,默认用户名 admin,默认密码 admin123:

 

 

Nexus 配置(登陆后)

一、菜单 Administration/Server 配置邮箱服务地址(若是忘记密码,能够经过该邮箱找回密码) 

  给用户配置邮箱地址,方便忘记密码时找回: 

  用户修改密码 

 

二、仓库类型 

求仓库组便可请求到仓库组管理的多个仓库; hosted 宿主仓库:主要用于发布内部项目构件或第三方的项目构件(如购买商业的构件) 以及没法从公共仓库获取的构件(如 oracle 的 JDBC 驱动) proxy 代理仓库:代理公共的远程仓库; virtual 虚拟仓库:用于适配 Maven 1; 通常用到的仓库种类是 hosted、proxy 

Hosted 仓库经常使用类型说明: releases 内部的模块中 release 模块的发布仓库 snapshots 发布内部的 SNAPSHOT 模块的仓库 3rd party 第三方依赖的仓库,这个数据一般是由内部人员自行下载以后发布上去 

若是构建的 Maven 项目本地仓库没有对应的依赖包,那么就会去 Nexus 私服去下载, 若是Nexus私服也没有此依赖包,就回去远程中央仓库下载依赖,这些中央仓库就是proxy。 Nexus 私服下载成功后再下载至本地 Maven 库供项目引用。 

三、设置 proxy 代理仓库(Apache Snapshots/Central/Codehaus Snapshots)准许远程下载, 如: 

 

四、Maven 本地库的安装与配置(请看参考https://my.oschina.net/u/3375733/blog/1546559 )

  环境变量、setting.xml 、修改 pom.xml 中的私有库地址

 

本文为博主原创文章,转载请注明出处!

https://my.oschina.net/u/3375733/blog/

相关文章
相关标签/搜索