window Maven私服搭建——nexus
- Maven私服搭建——nexus
1、下载nexus
https://www.sonatype.com/download-oss-sonatype
bundle自带了jetty容器
下载其中一个,解压后内容是一样的,tar.gz下载更快,因为压缩比更高。
2、安装 nexus
2.1解压压缩包
得到
2,2安装nexus
由于下载的版本bundle自带jetty容器,故不需要额外的配置就可以启动。
在windows环境安装
找到路径:D:\nexus2.8\nexus-2.8.1-01\bin\jsw\windows-x86-32
事实上,你需要先安装好jdk,你的jdk是32位的就选择windows-x86-32,你的jdk是64位的就选择windows-x86-64
可以参考:JDK安装和JAVA环境变量的设置
然后,先尝试一下环境是否正常:
点击 console-nexus.bat
如果没有报错,访问 http://localhost:8081/nexus/
8081端口是默认的,如果要修改,打开路径D:\nexus2.8\nexus-2.8.1-01\conf 下的nexus.properties 文件进行修改
点击右上角的 Log In 登陆,
默认登陆用户名:admin,密码:admin123
3、nexus 仓库分类
maven会向nexus请求jar包,nexus可以有多个仓库,每个仓库都有一个地址,maven的配置文件可以像从maven的中央仓库请求资源一样从nexus请求资源。
maven的中央仓库缺少一些特定版权的jar包,本地的正在开发的jar包,nexus则可以进行对这些归类管理,比如apache的,Oracle jdbc驱动的 ,包括本地项目等。
nexus即可以建立多个仓库,也可以把已存的仓库组合起来作为一个仓库。
分类示意图如下:
4、maven的依赖范围
当存在依赖关系时
5、maven的快照(SNAPSHOT)版本和发布(release)版本
当项目处于开发阶段,版本要被声明为类似于 2.1-SNAPSHOT的模式,当该项目版本稳定则可将版本写为 2.1
开发阶段的版本不应对外发布,发布版本的不应依赖快照(SNAPSHOT)版本。
此外,maven还有一个 最新版本,即latest,这个是取最新的版本,包含快照版本和发布版本。
6、maven镜像
如果仓库X可以提供仓库Y存储的所有内容,那么就可以认为X是Y的一个镜像。换句话说,任何一个可以从仓库Y获得的构件,都能够从它的镜像中获取。
比如,http://maven.net.cn/content/groups/public/是中央仓库http://repo1.maven.org/maven2/在中国的镜像,同样,我们也可以使用私服来作为镜像。
所以,目前就是这样的结构,nexus负责组织各种仓库作为私服,对外提供访问地址,然后在maven的配置文件settings.xml中配置
7、在neuxs中新建宿主仓库,
双击新建宿主仓库,在下面面板填写配置信息
8、新建代理仓库
代理仓库的背后是远程仓库。
9、创建仓库组
然后选择已经配置好的宿主仓库和代理仓库
10、在maven中配置nexus
10.1 在maven项目的pom.xml文件中配置远程仓库(或者私服),maven默认的中央仓库id为central,如果重写,会直接覆盖。
依赖的远程仓库配置
以及插件的远程仓库配置
10.2 如果访问私服需要设置权限
则在maven的settings.xml中配置neuxs的用户名和密码
然后是激活我们的nexus配置,同样是在maven的settings.xml文件中
10.6 如果仅仅是10.5,maven还是会去是不是的请求中央仓库
在settings.xml中增加如下配置即可使maven的所有的请求都被nexus拦截。
11、一个实际maven项目的私服配置文件
11.1当安装好nexus后,运行console-nexus.bat
访问http://localhost:8081/nexus/
登陆 admin/admin123
之后选择Repositories
右边显示的7个仓库是nexus自带的,右边的链接是maven项目访问私服的具体链接
点击开 Public Repositories,可以看到这个仓库组包含了其他仓库
11.2、我们的maven项目的配置文件会直接显示的表达出和其中的3个仓库(组)打交道
11.2.1 Repository的名字为 Public repositories,其作为替代maven中央仓库和其他仓库的和作为私服的对外接口,
其配置的位置位于 maven的settings.xml文件,尤其注意其id的值,不单在settings。xml中保持一致,在maven项目的pom.xml文件中的部署配置中
也要保持id值与之一致
(1)maven的settings.xml声明nexus的仓库组,这里id自定义为 mynexus
注意里面的url路径,是
http://localhost:8081/nexus/content/groups/public/
这是Public repositories
(3)maven的settings.xml 声明的仓库组拦截一切maven的jar包请求(不再访问maven的默认的central即中央仓库)
注意这里id自定义为 mynexus,与上面的声明一致
11.2.2 Releases 是发布版本,当maven项目开发为稳定版本时,可以部署到这个仓库
11.2.3 Snapshots 是不稳定版本,如果上传可以选择上传到私服的这个仓库
11.2.4 决定上传时版本状态的是maven项目的pom.xml文件的标签
注意,不稳定版本有-SNAPSHOT后缀
11.2.5 maven的pom.xml部署到私服的配置
当项目需要部署到私服时,需要上传,在下面的配置文件之后,运行 mvn clean deploy命令即可
注意id为mynexus,和settings.xml文件中的一致
运行deploy命令后,我们可以到nexus的仓库中查看
是一个jar包了
而我的项目结构为
12 附属可能遇到的报错,这个是在eclipse中操作的,jdk1.7
- maven私服搭建 nexus
- linux下 maven安装及nexus私服搭建
- 在操作系统Centos 6.3 上使用Nexus 2.8搭建MAVEN私服 及 cloudstack 开发环境
- Linux下搭建maven私服Nexus 3.2.1-01
- linux 搭建 nexus 私服及配置
- 使用Nexus搭建Maven私服
- 使用Nexus搭建Maven私服(二)
- Maven学习总结(十)——使用Nexus搭建Maven私服
- maven--私服的搭建(Nexus的使用)
- linux搭建nexus私服
- Maven(2)使用Nexus搭建Maven私服
- 如何搭建nexus私服,及其使用
- CentOS7搭建Maven的Nexus私服仓库
- 搭建Nexus私服
- Maven学习 (四) 使用Nexus搭建Maven私服
- 使用Nexus搭建Maven私服
- 使用nexus在局域网内搭建maven私服及idea的使用
- nexus-3.0.0-03-win64搭建Maven nexus私服
- maven--私服的搭建(Nexus的使用)
- Sonatype Nexus 搭建Maven 私服