导航:首页 > 操作系统 > android找不到aar

android找不到aar

发布时间:2024-07-07 05:32:10

‘壹’ android studio aar 鏂囦欢鍦ㄥ摢

java">//瀹氢箟涓涓鍑芥暟锛宼arget鏄鐢熸垚jar鍖呯殑鏂囦欢钖嶏纴classDir鏄痗lass鏂囦欢镓鍦ㄧ殑鏂囦欢澶
defmakeJar(Stringtarget,StringclassDir){
exec{
executable"jar"//璋幂敤jar
args"cvf",target
args"-C",classDir
args"","."
}
}

//鏂板缓涓涓猼ask,钖崭负buildLib,渚濊禆build(build鏄涓涓镊甯︾殑task)
taskbuildLib(dependsOn:['build'])<<{
makeJar("lib.jar","build/intermediates/classes/release")
}

鍦╞uild.gradle涓娣诲姞瀵煎嚭jar鏂规硶銆

‘贰’ android studio中怎么引用aar文件

‘叁’ 怎样使用Android Studio引用本地aar文件

要输出 aar 文件,必须将 Mole 配置为 library,在 gradle 文件中如下:
输出 aar : apply plugin: 'com.android.library'; 输出 apk :apply plugin: 'com.android.application'。
将 Mole 配置为 library 后,构建输出一个 aar 文件,根据渠道和 BuildType 的不同,在相应的目录下可以找到。比如对 BuildType 为 debug 的配置,输出为:[MoleName]/build/outputs/aar/[MoleName]-debug.aar。一份 aar 文件其实就是一份 zip 包,和 jar 不同的是,它将一些资源文件、第三方库文件、so 文件等等都打包在内,而代码文件编译压缩在在 classes.jar 中。比如:

3、导入 aar 的方式引用
这种方式比较简单,打开 Project Structure,添加一个新 Mole,然后选择 Import *.JAR or *.AAR Package 的方式导入:

导入后,在你的工程下面,会生成一个文件夹,里面是 aar 文件以及 Android Studio 的配置文件。

接着可以在 gradle 中配置依赖了,其他 Mole 可以引用这个 Mole 了,依赖方式使用compile project 的方式即可。
缺点:被依赖的 aar 无法 F3 跟进去,无法看到资源文件内容以及目录层级等等缺陷。
4、使用配置依赖的方式引用
gradle 其实还有另一种依赖可以引用 aar:
compile(name: 'xxx', ext: 'aar')。
首先需要将 aar 文件放入引用 Mole 的 libs 目录下,和一般的 jar 文件类似。然后在 gradle 配置文件中把 libs 目录加入依赖:

<code class="hljs bash">repositories {
flatDir {
dirs 'libs'
}
}</code>

接着在 gradle 的依赖配置中加入 compile(name: 'xxx', ext: 'aar') 这一句,依赖即可关联完毕。构建一下工程,在 Mole 的 build/intermediates/exploded-aar 目录下,可以看到有一些临时文件生成:

看起来完全是引用 aar 的解压版本。Android Studio 安装反编译插件后,可以通过 F3 跟进到 class 文件里面,如果你有被依赖 Mole 的源代码的话,还可以 Attach Source 关联源代码查看。另外,可以很方便的查看 aar 中的资源文件。
另外,这种依赖方式更新 aar 后,生成的临时文件也会随之变动,不用担心改动不同步的问题。望采纳,谢谢。

‘肆’ 怎么改变android studio中库的aar文件的输出目录

在Android Studio菜单上,依次选择: File New Xml Layout xml File Android Studio 是一个Android开发环境,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试。 在IDEA的基础上,Android Studio 提供: 基于Gradle的构建支持 Android 专属的重构和快速修复 提示工具以捕获性能、可用性、版本兼容性等问题 支持ProGuard 和应用签名 基于模板的向导来生成常用的 Android 应用设计和组件 功能强大的布局编辑器,可以让你拖拉 UI 控件并进行效果预览

‘伍’ android studio aar怎么用

一. 简介

aar是一个类似于jar的文件格式。但是他们之间是有区别的。
jar:仅仅包含class和清单文件,没有资源文件。
aar:包含了class文件和资源文件。说白了就是Android的专属“jar”

将代码打包成aar文件,可以在一定程度上加快AndroidStudio的速度。
尤其是将Mole打包成aar文件,提升的效果很显着。

二. 如何得到aar

1. Mole的aar文件

将一个AndroidStudio项目中的Mole打包成aar其实很简单。
在每一个Mole的目录下面都会有这样一个文件夹:build\outputs\aar。
这个文件夹下面就放着这个Mole对应的aar文件。
一般情况下会有两个aar文件,一个debug版本,一个release版本。
我们选择release的就ok。
注意:
新建的Mole是没有这个文件夹的。这时,你可以使用 两种方法 生成这个文件夹

将整个项目运行一遍,这个文件夹会自动生成
执行命令 ./gradlew assembleRelease 也可以生成这个文件夹
Mole中的libs目录文件会随着项目的编译被打包进aar文件中,但是build.gradle中的引用库不会打包进aar文件中,这个需要 特别留意。如果你忽略了这个Mole的build.gradle中的引用库,很可能引发ClassNotFoundException异常。
2. 远程仓库的aar

在项目里面经常会引用一下远程仓库的依赖库。
这时,我们也可以将它以aar的形式引入到项目中。
这个依赖库的aar其实也很好找。
当你配置好一个依赖库以后,点击 Sync Now 。
AndroidStudio会自动下载这个库到C盘(windows)。你找到这个文件就可以了。
这里我使用的是Everything进行搜索,很方便就找到这个库的下载文件夹。其他操作系统就自行搜索吧,总之找见这个项目的下载文件夹就ok。
这个下载文件夹中包含了这个项目所需要的所有东西:包括aar、jar等文件。

后面会以一个例子详细讲解这个过程

注:
Everything是一个搜索软件,可以瞬间搜索全盘。
是一个非常实用的软件。但是很可惜只有windows版本。
官网地址:<a href="<a href="https://www.voidtools.com/" target="_blank">https://www.voidtools.com/</a>" target="_blank"><a href="https://www.voidtools.com/" target="_blank">https://www.voidtools.com/</a></a>
三. 如何使用aar

想要使用aar文件,需要经过以下几步:

1. 在app的build.gradle中加入以下配置

repositories {
flatDir {
dirs 'libs' // aar目录
}
}
2. 将aar文件拷贝到app/libs目录下

3. 在dependencies中加入aar引用

compile(name: 'zbar-release', ext: 'aar')
四. LeakCanary项目示例

因为Mole的例子比较简单,所以选择远程代码库作为示例。
这里使用一个经常使用的内存检测项目LeakCanary来做一个示例。
我们通常使用依赖来使用这个库:

debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3'
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3'
当Sync Now完成后,我们可以在C盘(windows)找见这个项目文件夹。

这个文件夹下面就有我们需要的两个依赖库:leakcanary-android和leakcanary-android-no-op
点开leakcanary-android文件夹,目录结构如下(1.3是对应的版本号):

leakcanary-android文件夹
打开最里层的文件夹,你会发现文件的类型主要有三种:

jar文件:有的项目是以jar文件形式提供
aar文件:有的项目是以aar文件形式提供
pom文件: (Project Object Model),实际上就是个xml,是对一些必要信息的说明。这里我们只关心一个节点信息:<dependencies>:声明依赖列表
我们用文本编辑器打开leakcanary-android文件夹下面的pom文件:
...
<dependencies>
<dependency>
<!--包组 id,通常是发布者拥有的域名的反向,以免跟别人的重复-->
<groupId>com.squareup.leakcanary</groupId>
<!--包 artifactId,其实就是组以下应该有一个更小的归类-->
<artifactId>leakcanary-analyzer</artifactId>
<!--版本号-->
<version>1.3</version>
<scope>compile</scope>
</dependency>
</dependencies>
..
当我们打开leakcanary-android的pom文件,
我们发现leakcanary-android依赖于leakcanary-analyzer的1.3版本。

同样的的我们打开leakcanary-analyzer 的pom文件,
发现leakcanary-analyzer依赖leakcanary-watcher和haha。

leakcanary-watcher和haha则没有依赖任何东西。

这样整个leakcanary-android导入本地的东西就是四个:

leakcanary-android
leakcanary-analyzer
leakcanary-watcher
haha
同样的方式去一层一层解析leakcanary-android-no-op,将所有需要的文件都导入到AndroidStudio中。这样整个LeakCanary就被我们真正实现本地化了。

debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3'
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3'
debugCompile(name: 'leakcanary-android-1.3', ext: 'aar')
compile files('libs/leakcanary-analyzer-1.3.jar')
compile files('libs/leakcanary-watcher-1.3.jar')
compile files('libs/haha-1.1.jar')
releaseCompile(name: 'leakcanary-android-no-op-1.3', ext: 'aar')
这样就将整个LeakCanary项目完全转换成了本地的依赖。

‘陆’ Android Studio缂栬疟镞舵槸镐庢牱镆ユ垒jar/aar

濡傛灉浣犲彧鏄涓涓绠鍗旷殑绫诲簱闾d箞浣跨敤鐢熸垚镄*.jar鏂囦欢鍗冲彲锛涘傛灉浣犵殑鏄涓涓猆I搴掳纴鍖呭惈涓浜涜嚜宸卞啓镄勬带浠跺竷灞鏂囦欢浠ュ强瀛椾綋绛夎祫婧愭枃浠堕偅涔埚氨鍙鑳戒娇鐢*.aar鏂囦欢銆

浣跨敤鏂瑰纺锛

*.jar锛氭嫹璐濆埌锛歭ibs鐩褰曪纴eclipse鐩存帴瀵煎叆鍗冲彲锛孉ndroidStudio椤圭洰涓娣诲姞锛

阅读全文

与android找不到aar相关的资料

热点内容
中年程序员的清晨时光 浏览:917
自己用色素做解压小神器 浏览:204
抖音小游戏解压神器水上乐园 浏览:471
java排序算法稳定 浏览:976
为什么app搜不到蜻蜓fm 浏览:875
估算法有哪些 浏览:375
androidx86横屏 浏览:701
文怡用的运动app是什么 浏览:257
治愈解压英文伴奏 浏览:157
兄弟连php课件 浏览:985
营业厅app怎么退套餐 浏览:185
mac和win编程哪个好 浏览:199
winrar自解压执行命令 浏览:305
安卓fps是什么文件夹 浏览:81
文件夹老是闪动什么原因 浏览:768
ota服务器需要什么配置 浏览:867
离群点算法matlab代码 浏览:660
秒表plc编程 浏览:131
王的命令更新时间 浏览:966
怎么给APP锁住 浏览:944