官方介绍:

The freeartifact repository with universalsupport for popular formats.

10 million developers trust Nexus

来个全套的,私有仓库搭建-->代码上传-->远程依赖

系统 环境:windows 64

软件版本:Nexus Respository Manager OSS 3.x

无论安装还是启动,非管理员用户必须以 管理员身份 运行命令行,管理员身份,管理员!重要说三遍

安装时提示:

Could notopenSCManager.

不用想了,以管理员身份重新打开命令行吧

下载安装

自行下载安装包 Nexus Repository Manager

替你们找好 [免费版]:(https://www.sonatype.com/download-oss-sonatype?hsCtaTracking=920dd7b5-7ef3-47fe-9600-10fecad8aa32%7Cf59d5f10-099f-4c66-a622-0254373f4a92) 了

[专业收费版在这]:(https://www.sonatype.com/download-sonatype-trial?submissionGuid=4d5ac1c9-5897-450b-885a-3aa22b41d3e7)

假设,安装包解压路径为D:IDEnexus-3.9.0-01-win64nexus-3.9.0-01

命令:进入解压路径:

C:

Windows

system32>

cd

D:

IDE

nexus-3

.9.0-01-win64

nexus-3

.9.0-01

bin

添加全路径到环境变量,直接执行命令

安装:nexus.exe/

install

当看到下面的提示,恭喜,成了

Installedservice 'nexus'.

仓库服务操作

只要 想对仓库做些事儿,就得 以管理员身份登录

下面俩命令挺重要的,记住

开启服务nexus.exe/ start

成功提示

Startingservice 'nexus'.

等待大概 5-10 秒左右,启动需要时间

- 端口号 『8081』

在浏览器地址栏输入 『你自己的 ip地址:8081』,或者 『localhost:8081』 -

进入 仓库管理页面

localhost

:8081

192 .168.13.32:8081

停止服务nexus.exe/ stop

成功提示如下:

Stoppingservice 'nexus'.

Service stopped

上面的内容,记不住也没关系

仓库搭建登录

管理员身份:user: admin pd: admin123,默认的,可以修改密码

仓库创建

丢个图:

nexus私有仓库 包迁移_私有仓库

既然要 Maven 仓库,当然选择 Maven 了

可以创建出三种不同类型的仓库

再丢个图:

nexus私有仓库 包迁移_上传_02

最简单,不用任何配置的当属 hosted ,其他两种自行感受,我们以最简单最直接最快看到结果为目的

nexus私有仓库 包迁移_android nexus 3.x_03

仓库名称 不支持中文(废话)

仓库来了:

nexus私有仓库 包迁移_私有仓库_04

点进去,看看 仓库地址吧

nexus私有仓库 包迁移_上传_05

现在,仓库有了,地址有了,该发布 『远程依赖包』 了

代码上传信息配置

build.gradle文件

重要信息:repository,pom
repository 包含:仓库地址,用户信息
pom 包含 上传到仓库后,我们使用的 『远程依赖 』信息
apply plugin: 'maven'
uploadArchives {
repositories.mavenDeployer {
repository(url: "http://localhost:8081/repository/Test1/") {
authentication(userName: "admin", password: "admin123")
}
// 以com.android.support:appcompat-v7:25.1.0为对比
pom.version= "0.0.1"// 对应版本号 25.1.0
pom.artifactId= "virtualapk"// 对应 appcompat-v7
pom.groupId= "com.android.support"// com.android.support
}
}

上传

Gradle --> 待上传module -->upload-->uploadArchives

过程不说了,没啥点

看结果,丢图

nexus私有仓库 包迁移_nexus私有仓库 包迁移_06

有人说,呀,我配置错了,想删了重新上传,咋办

别急,看这:

选中你的版本号,然后右侧删除,再刷新一下,哦了

nexus私有仓库 包迁移_私有仓库_07

远程依赖

这里的远程的意思是:不是我本地磁盘里的

配置 远程仓库地址

不配这个地址,你就等着吧,默认的远程公共仓库根本没有

工程.gradle 文件

allprojects {
repositories {
....
//此处的远程仓库地址就是上面上传的地址
maven { url "http://localhost:8081/repository/TEST/"}
}
}
当然,

如果只有个别的 module 需要本地仓库 依赖,配到需要的 module 里就好了。

依赖语法

跟 正常的远程依赖一样,没区别

implementation'groupId:artifactId:version'
implementation'com.android.support:virtualapk:0.0.1'
同步一下

再验证一下

nexus私有仓库 包迁移_nexus私有仓库 包迁移_08

jar 包都有了,还能说啥

补充一句:自己的私有仓库提供给其他人用的话,把localhost 缓存 你自己的ip 地址