Nexus私服的安装与配置

Nexus的安装与配置

仅以此文,献给陷入懒癌晚期的小伙伴们.

本文基于nexus 3.xx

.0. What?Why?When?Who?Where?

  Sonatype Nexus是一款maven仓库管理软件,有了它,你可以方便的搭建属于自己的maven私服。而通过搭建私服,可以带来几个显而易见的好处。 
- 节省外网带宽:以一个30人的项目小队为例,如果没有私服,所有的人在更新依赖时,都将从中央仓库去检查更新,这无疑增加了外网负担。 
- 方便内网协作:很多Team工作中会出现没有外网、不允许连接外网或者外网访问受限的情况。这时候总有那么1-2台机器是可以顺畅的连接外网的,如果在外网机器上搭建私服,再配以梯子。无疑方便又高效。 
- 组件共享:开发的公共组件,又不想上传到三方仓库怎么办,上传到私服,设定一个坐标便可以像其它依赖一样随时引用了。

.1.下载

  下载地址:http://www.sonatype.com/download-oss-sonatype 
  一般官方会提供两个包,一个安装板和解压版。可以根据自己的喜好选择喜欢的版本下载。这里我选择的是解压版的进行安装。 
  本文采用的是3.X版本,3.x版本增加了对docker、npm等仓库的支持,但遗憾的是暂时不支持手工upload构件,据说这个功能会在3.1之后支持。

.2.安装&配置

  [官方文档](http://books.sonatype.com/nexus-book/3.0/reference/install.html) 
  先决条件 : 配置好了 JDK , JDK的配置不在本文讨论范围 , 不赘述 。 
* 启动 * 
  解压下载的压缩包,打开命令行跳到指定解压目录下的 bin 目录下,执行./nexus /run(windows执行nexus.exe /run),然后经过一段时间的等待,当你发现控制台打印出Started Nexus Repository Manager 3.0.1-01这句话时,恭喜,Nexus已经安装成功。 
  访问 : http://localhost:8081,可以进入仓库页面。默认的用户名密码是admin/admin123,运行后会自动生成一个nexus工作目录sonatype-work,nexus下载的jar包会存放在sonatype-work/nexus/storage中。

* 停止 * 
  Ctrl+c即可

* 修改存储路径 * 
  可以通过修改bin/nexus.vmoptions文件修改数据存储路径、缓存路径等。

* 修改端口、ip * 
  如果要修改IP、端口等可以通过修改etc/org.sonatype.nexus.cfg文件进行修改。

* 仓库 * 
nexus的仓库类型分为以下几种:

  • group: 仓库组
  • hosted:宿主仓库
  • proxy:代理仓库

点击页面顶端的齿轮按钮->点击repositories,可以看到nexus已经预置了7个仓库,可以点击create repositories添加其他的仓库,比如 
- JBOSS的两个: 
http://repository.jboss.org/maven2 
http://repository.jboss.org/nexus/content/repositories/releases 
- spring的: 
https://repo.spring.io/libs-release

.3.使用

* 使用私服 * 
点击页面顶端的齿轮按钮->点击repositories,在列表中,找到需要的仓库,复制url内容,添加到gradle脚本中.

repositories {
    maven { url "http://localhost:8081/repository/maven-public/"}
    maven { url "http://localhost:8081/repository/spring-public/"}
    jcenter()
    mavenCentral()
}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

* 发布到私服 * 
修改gradle.properties

nexusUrl=http://localhost:8081
nexusUsername=admin
nexusPassword=admin123
 
 
  • 1
  • 2
  • 3

使用maven插件进行上传

uploadArchives {
    repositories {
        mavenDeployer {
            repository(url: "${nexusUrl}/repository/maven-releases/") {
                authentication(userName: nexusUsername, password: nexusPassword)
            }
            snapshotRepository(url: "${nexusUrl}/repository/maven-snapshots") {
                authentication(userName: nexusUsername, password: nexusPassword)
            }
        }
    }
}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

* 手动发布 *

以下是2.x版本的上传方式,3.x版本据说要等到3.1以后才支持。

  在nexus的仓库列表中点击要部署的目标仓库,然后点击Artifact Upload选项卡,在Gav definition选择,Gav parameters,然后在下面的三个输入框里输入group、artifactID、version等相关信息,然后点击select artifact to upload上传即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值