Android Studio 使用本地Maven仓库
前言
某天晚上,远程的同事发了个aar的zip包给我,让我集成验证一下这个aar是否功能正确。引用第三方的aar,可以有三种方式来集成:
- 将aar上传到远程仓库,然后直接在build.gradle中引用;
- 将aar放到项目的libs目录中,本地引用;
- 将aar放到本地仓库,然后直接在build.gradle中引用。
由于某些原因,同事无法上传aar,第一种方法无法使用。同事的aar也引用了很多模块提供的aar,如果使用第二种,那我这边还得另外跟着引用。作为嫌麻烦的人,我选择pass掉。所以最终只能使用第三种方式,即使用本地Maven仓库的方式。
使用本地Maven 仓库
-
首先在项目根目录创建repos目录,将aar以及pom按引用路径放在repos目录下。
- 然后在项目根目录的build.gradle文件中,引用新建的repos作为本地仓库
allprojects {
repositories {
google()
jcenter()
// 引用本地仓库repos
jcenter{
url rootProject.file('repos')
}
}
buildscript {
repositories {
// 引用本地仓库repos
jcenter {
url rootProject.file('repos')
}
}
}
}
- 最后直接在app目录的build.gradle文件中引入我们的本地aar就行了。这样就会根据aar的pom文件,自动引用aar需要的依赖,不用我们在build.gradle文件中一个一个引用了。
dependencies {
...
implement 'cloudon:xxx:0.0.1'
}
扩展
在实际开发中,如果遇到多个项目需要使用同个aar,然后这个aar同样没上传到远程仓库。可以将aar放到本地的公共目录,然后将根目录的maven的url指定到那个目录路径即可,比如:
allprojects {
repositories {
google()
jcenter()
// 引用本地仓库repos
jcenter{
url 'file:///D:/test'
}
}
buildscript {
repositories {
// 引用本地仓库repos
jcenter {
url 'file:///D:/test'
}
}
}
}
版权声明:本文为weixin_45519413原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。