环境
Android Studio、Ubuntu16.04
前提
1、安装Java8;
2、安装Nexus3
开始配置
1、解压到/usr/local目录下
tar -zxvf nexus-3.10.0-04-unix.tar.gz -C /usr/local
2、修改配置文件
cd /usr/local/nexus-3.10.0-04/bin
sudo gedit nexus
3、启动
cd /usr/local/nexus-3.10.0-04/bin
sudo ./nexus run
然后我们就可以打开浏览器访问了,访问本地:
http://127.0.0.1:8081
点击右上角可以进行登录:
默认用户:admin 密码:admin123
创建本地库
1、先创建一个仓库
2、在项目根路径下的build.gradle下增加maven配置:
buildscript {
repositories {
//...
mavenLocal()
}
}
3、对于要上传的库Module下的build.gradle中增加配置:
apply plugin: 'maven'
android {
//...
uploadArchives{
repositories.mavenDeployer{
// url为新建的maven库地址
repository(url: "http://127.0.0.1:8081/repository/com.xxx.xx/") {
authentication(userName: "admin", password: "admin123")
}
// com.xxx.xx:thirdpardfunction:1.0
pom.version = "1.0"
pom.artifactId = "thirdpardfunction"
pom.groupId = "com.xxx.xx"
}
}
}
maven库地址:
4、刷新gradle后在右边窗口可以看到多了一个任务:
双击即可开始上传。
之后可以看到上传的结果:
配置远程仓库代理
这里我们可以选择配置
jcenter:
http://jcenter.bintray.com/
阿里:
http://maven.aliyun.com/nexus/content/groups/public/
jipack:
https://jitpack.io/
点击创建即可。
整合多个仓库
现在我们有多个仓库,我们希望能够同时引入,那么就需要把各个仓库添加到maven公共仓库中,这样我们可以一次性引入:
引用仓库
接下来,就是最重要的一步了,我们要在项目中引用我们搭建的私服。
1、在项目根路径下的build.gradle下增加maven配置:
allprojects {
repositories {
maven {
// 仓库的地址可以在仓库列表中点击“copy”按钮,弹出的文本框中就是地址。
// 此处引用了maven-public公共仓库
url "http://127.0.0.1:8081/repository/maven-public/"
// 可以单独引用某个仓库
// url "http://127.0.0.1:8081/repository/com.xxx.xx"
}
}
}
2、对于要引用的依赖,直接添加到项目中的build.gradle中 :
引用规则按照maven转gradle依赖的方式:groupId:badgeView:version
比如之前在com.xxx.xx仓库中上传了:
pom.version = "1.0"
pom.artifactId = "thirdpardfunction"
pom.groupId = "com.xxx.xx"
对应:
compile "com.xxx.xx:thirdpardfunction:1.0"
查看对应的maven依赖:
参考:
https://jingyan.baidu.com/article/ff42efa9d526e4c19e220215.html
https://blog.csdn.net/u012939909/article/details/65631081
https://www.cnblogs.com/zyw-205520/p/6502183.html