本文主要是介绍Androidstudio 打包aar 无法引用类库中 dependencies 远程依赖,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在网上看到一些Androidstudio 打包生成aar的方法:
- 界面操作
Build--> Rebuild Project
- 命令行操作
gradle clean build
以上两种方法,前提Module是Library,调用系统build重新构建工程,完成后会在Module 模块下build---->outputs 目录中输出aar 类库文件
但是对于aar类库中包含dependencies 远程依赖的情况下,会出现无法调用类库的中依赖工程
例:aar类库中包含远程依赖volley, 此时按照如上方法打包出的aar,在目标工程中是无法调用volley使用的
compile 'com.mcxiaoke.volley:library:1.0.19'
解决方案:
创建本地Maven 仓库,并生成可用aar 类库
1.在项目根目录build.gradle 文件 buildscript -> repositories 中添加 mavenLocal()
2.在Library模块build.gradle 文件中添加如下代码,使用命令行执行 gradle uploadArchives
apply plugin: 'maven'
uploadArchives {
configuration = configurations.archives
repositories {
mavenDeployer {
repository(url: "file://localhost/"+"Users/kevinbai/Desktop")
pom.project {
version '1.0.0'
artifactId 'mcdnb'
groupId 'com.payment.nb'
packaging 'aar'
description 'mcdnb'
}
}
}
}
参数定义如下:
repository url 路径可自定义
version 版本
artifactId 名称
groupId 包名
packaging 类型
description 描述
完成后,会在如上指定目录URL(Users/kevinbai/Desktop) 中生成如下文件
注意:评论里边很多人找不到目标aar,请确认url 路径,不要和我写一样,我的路径里边包含了Mac用户路径
正确的使用方法:
1.在项目最外层build.gradle 文件中添加如下代码(注意:路径与之前生成路径保持一致)
allprojects {
repositories {
jcenter()
maven{ url "file://Users/kevinbai/Desktop"}
}
}
2.在module build.gradle 文件中直接引用
格式 :pom.groupId : pom.artifactId : pom.version
示例 :
compile 'com.payment.nb:mcdnb:1.0.0'
注意:
这里一定不要把aar放到libs里边去使用,肯定加载不到的,一定要按照如上方法,直接从库里边加载,因为Maven库的配置
文件里边会有第三方类库的引用
评论里边很多人说我是标题党,说解决不了问题,请你们认真看文章!!
另外,使用maven 远程仓库最为方便,此处略
这篇关于Androidstudio 打包aar 无法引用类库中 dependencies 远程依赖的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!