Androidstudio 打包aar 无法引用类库中 dependencies 远程依赖

本文主要是介绍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 远程依赖的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1071962

相关文章

电脑win32spl.dll文件丢失咋办? win32spl.dll丢失无法连接打印机修复技巧

《电脑win32spl.dll文件丢失咋办?win32spl.dll丢失无法连接打印机修复技巧》电脑突然提示win32spl.dll文件丢失,打印机死活连不上,今天就来给大家详细讲解一下这个问题的解... 不知道大家在使用电脑的时候是否遇到过关于win32spl.dll文件丢失的问题,win32spl.dl

pip无法安装osgeo失败的问题解决

《pip无法安装osgeo失败的问题解决》本文主要介绍了pip无法安装osgeo失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 进入官方提供的扩展包下载网站寻找版本适配的whl文件注意:要选择cp(python版本)和你py

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Flask解决指定端口无法生效问题

《Flask解决指定端口无法生效问题》文章讲述了在使用PyCharm开发Flask应用时,启动地址与手动指定的IP端口不一致的问题,通过修改PyCharm的运行配置,将Flask项目的运行模式从Fla... 目录android问题重现解决方案问题重现手动指定的IP端口是app.run(host='0.0.

Android WebView无法加载H5页面的常见问题和解决方法

《AndroidWebView无法加载H5页面的常见问题和解决方法》AndroidWebView是一种视图组件,使得Android应用能够显示网页内容,它基于Chromium,具备现代浏览器的许多功... 目录1. WebView 简介2. 常见问题3. 网络权限设置4. 启用 JavaScript5. D

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

Python结合Flask框架构建一个简易的远程控制系统

《Python结合Flask框架构建一个简易的远程控制系统》这篇文章主要为大家详细介绍了如何使用Python与Flask框架构建一个简易的远程控制系统,能够远程执行操作命令(如关机、重启、锁屏等),还... 目录1.概述2.功能使用系统命令执行实时屏幕监控3. BUG修复过程1. Authorization

Python依赖库的几种离线安装方法总结

《Python依赖库的几种离线安装方法总结》:本文主要介绍如何在Python中使用pip工具进行依赖库的安装和管理,包括如何导出和导入依赖包列表、如何下载和安装单个或多个库包及其依赖,以及如何指定... 目录前言一、如何copy一个python环境二、如何下载一个包及其依赖并安装三、如何导出requirem

Python如何快速下载依赖

《Python如何快速下载依赖》本文介绍了四种在Python中快速下载依赖的方法,包括使用国内镜像源、开启pip并发下载功能、使用pipreqs批量下载项目依赖以及使用conda管理依赖,通过这些方法... 目录python快速下载依赖1. 使用国内镜像源临时使用镜像源永久配置镜像源2. 使用 pip 的并