Android Studio 使用本地Maven仓库

  • Post author:
  • Post category:其他


Android Studio 使用本地Maven仓库



前言

某天晚上,远程的同事发了个aar的zip包给我,让我集成验证一下这个aar是否功能正确。引用第三方的aar,可以有三种方式来集成:

  1. 将aar上传到远程仓库,然后直接在build.gradle中引用;
  2. 将aar放到项目的libs目录中,本地引用;
  3. 将aar放到本地仓库,然后直接在build.gradle中引用。

由于某些原因,同事无法上传aar,第一种方法无法使用。同事的aar也引用了很多模块提供的aar,如果使用第二种,那我这边还得另外跟着引用。作为嫌麻烦的人,我选择pass掉。所以最终只能使用第三种方式,即使用本地Maven仓库的方式。



使用本地Maven 仓库

  1. 首先在项目根目录创建repos目录,将aar以及pom按引用路径放在repos目录下。

    在这里插入图片描述
  2. 然后在项目根目录的build.gradle文件中,引用新建的repos作为本地仓库
allprojects {
    repositories {
        google()
        jcenter()

		//	引用本地仓库repos
        jcenter{
            url rootProject.file('repos')
        }
    }

    buildscript {
        repositories {
        	//	引用本地仓库repos
            jcenter {
                url rootProject.file('repos')
            }
        }
    }
}
  1. 最后直接在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 版权协议,转载请附上原文出处链接和本声明。