Maven仓库-Nexus环境搭建及简单介绍

1.    环境搭建      1.1  下载

http://www.sonatype.org/nexus/

    NEXUS OSS [OSS = Open Source Software,开源软件——免费]

    NEXUS PROFESSIONAL -FREE TRIAL [专业版本——收费]。

    所以选择NEXUS OSS

    找到Download andInstall Nexus OSS。下载ZIP的即可:

  1.2  配置

    将下载的ZIP包解压,得到如下目录:

    将Nexus的bin目录添加到Path环境变量中:

    将Nexus与当前使用的JDK的关联,修改如下的配置文件即可,目录为,

    ${ Nexus_HOME }/bin/jsw/conf/wrapper.conf。如下图:

    到此配置完毕,然后,即可在本地访问Nexus,如出现下图就表示配置成功:

2.    Nexus中的仓库

  2.1  类型介绍

    登陆Nexus,在左边菜单栏里选择Repositories,然后会出现右边的画面,右边上半部分是列出来的repository,黑体字是类型为group的repository。

    这里简单介绍下几种repository的类型:

    Ø  hosted,本地仓库,通常我们会部署自己的构件到这一类型的仓库。比如公司的第二方库。

    Ø  proxy,代理仓库,它们被用来代理远程的公共仓库,如maven中央仓库。

    Ø  group,仓库组,用来合并多个hosted/proxy仓库,当你的项目希望在多个repository使用资源时就不需要多次引用了,只需要引用一个group即可。

  2.2  管理本地仓库

    我们前面讲到类型为hosted的为本地仓库,Nexus预定义了3个本地仓库,分别是Releases, Snapshots, 3rd Party. 分别讲一下这三个预置的仓库都是做什么用的:

    Releases:

     这里存放我们 自己项目中发布的构建, 通常是Release版本的, 比如我们自己做了一个FTP Server的项目, 生成的构件为ftpserver.war, 我们就可以把这个构建发布到Nexus的Releases本地仓库. 关于符合发布后面会有介绍.

    Snapshots:

     这个仓库非常 的有用, 它的目的是让我们可以发布那些非release版本, 非稳定版本, 比如我们在trunk下开发一个项目,在正式release之前你可能需要临时发布一个版本给你的同伴使用, 因为你的同伴正在依赖你的模块开发, 那么这个时候我们就可以发布Snapshot版本到这个仓库, 你的同伴就可以通过简单的命令来获取和使用这个临时版本.

    3rd Party:

    顾名思义, 第三方库, 你可能会问不是有中央仓库来管理第三方库嘛,没错, 这里的是指可以让你添加自己的第三方库, 比如有些构件在中央仓库是不存在的. 比如你在中央仓库找不到Oracle 的JDBC驱动, 这个时候我们就需要自己添加到3rdparty仓库。

  2.3  在Nexus为自己的项目手动单独建库

    建库,Add-- >HostedRepository

    建权限

    建角色(指定权限)

    建用户(指定角色)

  2.4  Maven仓库组

    通过前面介绍可 以了解到, 我们可以建立多个proxy代理仓库,hosted本地仓库, 如果没有仓库组的概念,我们如果需要引用这些仓库的是时候需要一一加入到我们的setting.xml里面去, 有了仓库的组的概念, 我们只需要做一次引用就可以了,把我们需要的仓库加入到仓库组即可。如下图:

    仓库组默认包含 本地仓库Releases,snapshots, 3rd party和代理仓库MavenCentral. 你可以在Configuration配置页添加仓库到这个仓库组. 如果需要你还可以创建一个仓库组,在Repositories菜单处选add-->Repository Group即可

3.    项目中配置Nexus仓库

  如果只有一个项目,可以配置在项目的pom文件中:

  如果有多个项目都使用Nexus的配置,可以将如上皮遏制放到Maven的Settings文件中:

4.    配置仓库镜像

  默认的,如果本地仓库找不到依赖的构件,这时需要东西时先到Nexus上找,如果发现Nexus服务关闭后,会自动到中央仓库找。

  如果我们想覆盖中央仓库的默认地址,强制依赖的东西都到Nexus中去找,即使Nexus关闭也不会到中央工厂去下载:

  修改Maven的Settings文件:

  注意,如果本地仓库有东西,但Nexus中没有,需要将该东西考到Nexus仓库中,然后更新仓库索引:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏JarvanMo的IT专栏

Ubuntu16.04.2安装KDE

最近重新安装了ubuntu kylin 16.04,之前一直用的是unity,这次心血来潮想装个KDE玩玩,然后百度了一下如何安装KDE,得到的答案大部分都是这...

922
来自专栏北京马哥教育

手把手教你用永恒之蓝(Eternalblue)勒索病毒漏洞的高阶用法

? 作者:7sDream 来源: https://www.zybuluo.com/7sDream/note/729295 安装 MSF Linux & Ma...

3768
来自专栏王小雷

Oracle Data Integrator 12c 安装(ODI安装)

Oracle Data Integrator 12c 安装(ODI安装) 企业版安装步骤(包含独立安装步骤) 官网下载Oracle Data Inte...

21510
来自专栏Java技术

为你的项目配置Maven私服Nexus

Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。

661
来自专栏张戈的专栏

自动管理员身份执行小工具—asroot

推荐使用的典型环境: 用户为普通帐号,没有管理员权限,但又必须取得程序安装权限,比如产线作业员需要时常更新驱动: 为了安全而使用普通帐号的个人电脑 还记得记得以...

3419
来自专栏CLEAN_CODER

在Pipeline中使用Docker执行构建任务

上节课我们完成了 搭建基于GoCD的持续集成基础设施,最后以我们的第一个pipeline的失败而结束,那么本节课的核心目标是扩展Pileline,并让Pipel...

632
来自专栏Aloys的开发之路

如何利用Oracle VM Templates 在几分钟内部署Oracle Real Application Clusters (RAC)

博客园地址: http://www.cnblogs.com/jiangxinnju

1014
来自专栏FreeBuf

添加Metasploit-payload到已有的Android项目中

*本文原创作者:xiaohuanshu,本文属FreeBuf原创奖励计划,未经许可禁止转载 metasploit在写这篇文章之前,笔者可以说是对java一窍...

2098
来自专栏程序员的诗和远方

Windows安装Python图像处理库:PIL模块

平常一般都在Linux下用Python,今天女票突然说让帮忙把一些图片全部弄成一个分辨率的,作为程序员,这种重复的工作还是交给计算机吧。 到PIL官网下载一个,...

38010
来自专栏Timhbw博客

小白搭建博客教程-wordpress等博客平台安装步骤(4)完结

2016-06-1023:25:51 发表评论 3,236℃热度 上一回说道:小白搭建博客教程之流程,这次趁着端午节写完它,也算是一个了结。 ? 教程有4篇:...

3848

扫码关注云+社区