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

相关文章

Spring核心思想之浅谈IoC容器与依赖倒置(DI)

《Spring核心思想之浅谈IoC容器与依赖倒置(DI)》文章介绍了Spring的IoC和DI机制,以及MyBatis的动态代理,通过注解和反射,Spring能够自动管理对象的创建和依赖注入,而MyB... 目录一、控制反转 IoC二、依赖倒置 DI1. 详细概念2. Spring 中 DI 的实现原理三、

解决Cron定时任务中Pytest脚本无法发送邮件的问题

《解决Cron定时任务中Pytest脚本无法发送邮件的问题》文章探讨解决在Cron定时任务中运行Pytest脚本时邮件发送失败的问题,先优化环境变量,再检查Pytest邮件配置,接着配置文件确保SMT... 目录引言1. 环境变量优化:确保Cron任务可以正确执行解决方案:1.1. 创建一个脚本1.2. 修

Python项目打包部署到服务器的实现

《Python项目打包部署到服务器的实现》本文主要介绍了PyCharm和Ubuntu服务器部署Python项目,包括打包、上传、安装和设置自启动服务的步骤,具有一定的参考价值,感兴趣的可以了解一下... 目录一、准备工作二、项目打包三、部署到服务器四、设置服务自启动一、准备工作开发环境:本文以PyChar

Xshell远程连接失败以及解决方案

《Xshell远程连接失败以及解决方案》本文介绍了在Windows11家庭版和CentOS系统中解决Xshell无法连接远程服务器问题的步骤,在Windows11家庭版中,需要通过设置添加SSH功能并... 目录一.问题描述二.原因分析及解决办法2.1添加ssh功能2.2 在Windows中开启ssh服务2

element-ui下拉输入框+resetFields无法回显的问题解决

《element-ui下拉输入框+resetFields无法回显的问题解决》本文主要介绍了在使用ElementUI的下拉输入框时,点击重置按钮后输入框无法回显数据的问题,具有一定的参考价值,感兴趣的... 目录描述原因问题重现解决方案方法一方法二总结描述第一次进入页面,不做任何操作,点击重置按钮,再进行下

Python pyinstaller实现图形化打包工具

《Pythonpyinstaller实现图形化打包工具》:本文主要介绍一个使用PythonPYQT5制作的关于pyinstaller打包工具,代替传统的cmd黑窗口模式打包页面,实现更快捷方便的... 目录1.简介2.运行效果3.相关源码1.简介一个使用python PYQT5制作的关于pyinstall

javafx 如何将项目打包为 Windows 的可执行文件exe

《javafx如何将项目打包为Windows的可执行文件exe》文章介绍了三种将JavaFX项目打包为.exe文件的方法:方法1使用jpackage(适用于JDK14及以上版本),方法2使用La... 目录方法 1:使用 jpackage(适用于 JDK 14 及更高版本)方法 2:使用 Launch4j(

python中poetry安装依赖

《python中poetry安装依赖》本文主要介绍了Poetry工具及其在Python项目中的安装和使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录前言1. 为什么pip install poetry 会造成依赖冲突1.1 全局环境依赖混淆:1

Java子线程无法获取Attributes的解决方法(最新推荐)

《Java子线程无法获取Attributes的解决方法(最新推荐)》在Java多线程编程中,子线程无法直接获取主线程设置的Attributes是一个常见问题,本文探讨了这一问题的原因,并提供了两种解决... 目录一、问题原因二、解决方案1. 直接传递数据2. 使用ThreadLocal(适用于线程独立数据)

Python实现局域网远程控制电脑

《Python实现局域网远程控制电脑》这篇文章主要为大家详细介绍了如何利用Python编写一个工具,可以实现远程控制局域网电脑关机,重启,注销等功能,感兴趣的小伙伴可以参考一下... 目录1.简介2. 运行效果3. 1.0版本相关源码服务端server.py客户端client.py4. 2.0版本相关源码1