使用Nexus搭建Maven私服
2015-11-10 10:00
381 查看
简介:
为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库。
JDK环境:
1.下载包
到这个地方http://www.sonatype.org/nexus/go 下载压缩包,我这边下载的是 nexus-2.8.1-01-bundle.zip 这个版本。
2.解包:
3.设为系统服务
4.添加环境变量#此处我用的是ROOT权限,所以环境变量我就不改了,根据你们的需求来做。 5.如果坚持使用root用户,修改/bin/nexus中一下行,默认第23行
6.启动
7.打开浏览器,访问:http://localhost:8099/nexus/ (默认端口号:8081):
如果要修改端口,在conf/nexus.properties文件里修改:application-port=8099
8.点击右上角 Log In,使用用户名:admin ,密码:admin123 登录,可使用更多功能:
9. Nexus预置的仓库
点击左侧 Repositories 链接,查看 Nexus 内置的仓库:
Nexus 的仓库分为这么几类: hosted 宿主仓库:主要用于部署无法从公共仓库获取的构件(如 oracle 的 JDBC 驱动)以及自己或第三方的项目构件; proxy 代理仓库:代理公共的远程仓库; virtual 虚拟仓库:用于适配 Maven 1; group 仓库组:Nexus 通过仓库组的概念统一管理多个仓库,这样我们在项目中直接请求仓库组即可请求到仓库组管理的多个仓库。
10.添加代理仓库
以 Sonatype 为例,添加一个代理仓库,用于代理 Sonatype 的公共远程仓库。点击菜单 Add - Proxy Repository :
填写Repository ID - sonatype;Repository Name - Sonatype Repository;
Remote Storage Location - http://repository.sonatype.org/content/groups/public/ ,save 保存:
将添加的 Sonatype 代理仓库加入 Public Repositories 仓库组。选中 Public Repositories,在 Configuration 选项卡中,将 Sonatype Repository 从右侧 Available Repositories 移到左侧 Ordered Group Repositories,save 保存:
11.搜索构件
为了更好的使用 Nexus 的搜索,我们可以设置所有 proxy 仓库的 Download Remote Indexes 为 true,即允许下载远程仓库索引。
索引下载成功之后,在 Browse Index 选项卡下,可以浏览到所有已被索引的构件信息,包括坐标、格式、Maven 依赖的 xml 代码:
有了索引,我们就可以搜索了:
12.配置Maven使用私服
私服搭建成功,我们就可以配置 Maven 使用私服,以后下载构件、部署构件,都通过私服来管理。
在 settings.xml 文件中,为所有仓库配置一个镜像仓库,镜像仓库的地址即私服的地址(这儿我们使用私服公共仓库组 Public Repositories 的地址):
本文出自 “好大的刀” 博客,请务必保留此出处http://53cto.blog.51cto.com/9899631/1711289
为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库。
JDK环境:
1.下载包
到这个地方http://www.sonatype.org/nexus/go 下载压缩包,我这边下载的是 nexus-2.8.1-01-bundle.zip 这个版本。
2.解包:
unzip nexus-2.8.1-01-bundle.zip -d /sfcdata/wyy/
3.设为系统服务
cp /sfcdata/wyy/nexus-2.8.1-01/bin/nexus /etc/init.d/ chkconfig --add nexus chkconfig --levels 345 nexus on
4.添加环境变量#此处我用的是ROOT权限,所以环境变量我就不改了,根据你们的需求来做。 5.如果坚持使用root用户,修改/bin/nexus中一下行,默认第23行
RUN_AS_USER=root
6.启动
./nexus start
7.打开浏览器,访问:http://localhost:8099/nexus/ (默认端口号:8081):
如果要修改端口,在conf/nexus.properties文件里修改:application-port=8099
8.点击右上角 Log In,使用用户名:admin ,密码:admin123 登录,可使用更多功能:
9. Nexus预置的仓库
点击左侧 Repositories 链接,查看 Nexus 内置的仓库:
Nexus 的仓库分为这么几类: hosted 宿主仓库:主要用于部署无法从公共仓库获取的构件(如 oracle 的 JDBC 驱动)以及自己或第三方的项目构件; proxy 代理仓库:代理公共的远程仓库; virtual 虚拟仓库:用于适配 Maven 1; group 仓库组:Nexus 通过仓库组的概念统一管理多个仓库,这样我们在项目中直接请求仓库组即可请求到仓库组管理的多个仓库。
10.添加代理仓库
以 Sonatype 为例,添加一个代理仓库,用于代理 Sonatype 的公共远程仓库。点击菜单 Add - Proxy Repository :
填写Repository ID - sonatype;Repository Name - Sonatype Repository;
Remote Storage Location - http://repository.sonatype.org/content/groups/public/ ,save 保存:
将添加的 Sonatype 代理仓库加入 Public Repositories 仓库组。选中 Public Repositories,在 Configuration 选项卡中,将 Sonatype Repository 从右侧 Available Repositories 移到左侧 Ordered Group Repositories,save 保存:
11.搜索构件
为了更好的使用 Nexus 的搜索,我们可以设置所有 proxy 仓库的 Download Remote Indexes 为 true,即允许下载远程仓库索引。
索引下载成功之后,在 Browse Index 选项卡下,可以浏览到所有已被索引的构件信息,包括坐标、格式、Maven 依赖的 xml 代码:
有了索引,我们就可以搜索了:
12.配置Maven使用私服
私服搭建成功,我们就可以配置 Maven 使用私服,以后下载构件、部署构件,都通过私服来管理。
在 settings.xml 文件中,为所有仓库配置一个镜像仓库,镜像仓库的地址即私服的地址(这儿我们使用私服公共仓库组 Public Repositories 的地址):
<mirrors> <mirror> <id>central</id> <mirrorOf>*</mirrorOf> <!-- * 表示让所有仓库使用该镜像--> <name>central-mirror</name> <url>http://localhost:8099/nexus/content/groups/public/</url> </mirror> </mirrors>
本文出自 “好大的刀” 博客,请务必保留此出处http://53cto.blog.51cto.com/9899631/1711289
相关文章推荐
- 登录页面在输入了正确的用户名和密码后仍跳转到登录页面而不是期望的系统首页面,debug的时候发现,登录页面调用的action类方法被调用了两次,后台无法获取前台页面传过来的参数。
- ubuntu nfs mount 挂载的经验
- 一篇很全面的freemarker教程
- v4l2解释说明(白话易懂版)
- Callable,Runnable比较及用法
- Matlab 读取文件夹中所有的bmp文件
- 如何从Apache官网下载windows版apache服务器
- HTML的font标签的使用
- C#开发微信公众平台-就这么简单(附Demo)
- 不要自称是程序员,我十多年的 IT 职场总结
- springMVC学习,个人入门学习小结。
- Oracle的instr函数
- HTML字符实体(Character Entities),转义字符串(Escape Sequence) 转
- AppScan 扫出隐藏文件,隐藏文件可能是项目目录下面的脚本,liunx命令
- Windows 10 的应用体验之一
- 移动安全时代,如何保护你的app
- Callable接口和Runnable接口
- etcd:从应用场景到实现原理的全方位解读
- ndroid中的MotionEvent 及其它事件处理
- 视频处理——实现滚动条实时显示