问题标签 [aar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
maven - 获取具有本机依赖项的 android maven 库以在 gradle 和 maven 项目中工作
我整天都在用头撞墙,试图弄清楚这一点。我正在尝试创建一个 android 库 X 作为 aar 和 apklib。这样做的原因是我们有一个使用 android maven 插件构建的 android 应用程序并且应该使用 apklib,但是其他人将在项目 Z 中使用该库,使用 gradle,因此需要 aar。
我正在尝试构建的库具有本机依赖项,我们在让该库为这两个项目工作时遇到了严重的问题。根据我们如何更改库 X 的 pom 文件,一个或另一个失败。
让我给出一些伪构建文件的更多上下文,不幸的是我不能分享原始文件。
库 X 的 pom.xml,使用 android maven 插件构建
打包为 apklib 的库 X 将作为依赖项添加到 maven 项目中,如下所示:
Maven 项目 Y,pom.xml:
Gradle项目Z,引用库X打包为aar,build.gradle:
鉴于此配置,我们获得的结果是一个正在运行的 maven 项目 Y,它似乎可以毫无问题地解决本机依赖关系,因为 .so 包含在生成的 apk 中。但是,gradle 项目 Z 构建良好,但无法在运行时找到 .so 依赖项。当我探索为库 X 生成的 apklib/aar 时,.so 库不存在。不知何故,maven 项目 Y 知道如何处理这种传递依赖,并且本机库将其转换为生成的 apk,但 gradle 项目无法这样做,并且共享库不会将其放入生成的 apk。
让具有本机依赖项的库在 gradle(作为 aar)和 maven(作为 apklib)项目上工作的正确方法是什么?有什么方法可以强制 maven 在生成的 apklib/aar 中包含本机工件?
希望我已经足够清楚了,我愿意就如何改进这个问题提出建议。谢谢!
android - 如何为 Android gradle 清单合并重新打包 AAR?
使用 android.support.v7.appcompat v21 的三星 4.2.2 设备存在巨大问题:
https://code.google.com/p/android/issues/detail?id=78377
为了避免这个问题,我想我会从 .m2repository 中获取 v21 appcompat aar 并且:
- 解压 appcompat-v7-21.0.0.aar
- 使用 jarjar 处理带有规则的 classes.jar (rule android.support.** android.support.@1)
- 用重新打包的 classes.jar 替换 classes.jar
- 压缩 appcompat-v7.21.0.0.aar
- 将重新打包的 aar 手动包含在我的 build.gradle 中(compile(name:'appcompat-v7-21.0.0', ext:'aar') 以及 build.gradle 存储库部分中我的 libs 文件夹的 flatDir)。
问题是当我使用重新打包的 aar 进行编译时,我从清单合并中得到一个 FileNotFoundException。所以,我试图确定我正在做的事情是否可能,如果可能的话,我的错误是什么。
这是我得到的错误:
错误:任务“:app:processDebugManifest”执行失败。
com.android.manifmerger.ManifestMerger2$MergeFailureException: java.io.FileNotFoundException: app/build/intermediates/exploded-aar/appcompat-v7-21.0.0/AndroidManifest.xml(没有这样的文件或目录)
编辑:
当我查看路径 app/build/intermediates/exploded-aar/appcompat-v7-21.0.0/ 时,AndroidManifest.xml 肯定存在。
android - 如何发布具有另一个 android 库项目依赖项的 AAR?
这是我的开发项目结构:
MyLib依赖于 LibA,我已将MyLib打包为 AAR 并将其发布到 Maven 存储库,但是当我将MyLib作为远程 aar 依赖项包含在另一个项目(TestProj)中时,出现构建错误(无法解析LibA的依赖项,LibA不包含在MyLib的发布中),这是 TestProj 的 app 文件夹中的build.gradel:
这是MyLib的 build.gradle :
我如何发布MyLib和已经打包在 AAR 中的LibA ?
android - Importing Urban Airship in Android Studio gives compile issues?
I'm new to Android Studio and i want to implement Urban Airship in one of my projects. I followed the example on their website with the .aar file and I ended up getting this error.
Correct me if I'm wrong but doesn't this mean that they have issues in their manifest file? Or am I completely out in the blue? If so, do anyone have a good example on how to implement it?
gradle - 将 eclipse android 库项目上传到 maven Central
背景我一直在eclipse中构建一个android库项目。它最初不是用gradle构建的,而是遵循旧的android文件夹结构
现在为了将它上传到 maven cental,我首先在 sonatype 上创建了一个帐户,然后在 jira 上为一个新项目创建了一个问题。他们为我的 groupid com.github.amansatija 创建了一个仓库(为此我等了两个工作日直到问题得到解决)
现在我创建了 gpg 密钥对环
之后,我用 gradle 导出了 eclipse android 库项目,然后我将它导入到 androistudio 中,以确保它完全对 gradle 友好。现在,在将 android 库项目的构建系统更改为 gradle 之后,我遵循了 chris banes maven-push gradle 插件在 github 上部署我的库项目到 maven
以下是 gradle my system 的详细信息
我的全局 gradle.properties 文件(user_homer.gradle\gradle.properties 中的那个)包含这个
我的项目的 gradle.properties 包含这个
我项目的 maven_push 文件包含以下内容
如您所见,我让它打印了 nexus 用户名和密码,脚本似乎已正确找到凭据
下面是我的 lib 模块的 build.gradle
下面也是我的库模块的 gradle.properties 文件
如您所见,我已经适当地遵循了 turoial 但是当我执行 gradlew clean uploadArchives 任务时,一切都很顺利,除了最后一步它说失败访问被拒绝
帮帮我……请……
编辑
解决方案::
所以我终于设法解决了这个问题。显然问题是
在我的项目的 gradle.properties 文件中,当我将上面的行更改为以下内容时
它似乎工作正常..标签 SNAPSHOT 导致我的工件被部署到 snotype 的快照存储库,并且由于某种原因快照存储库显然不适合您的工件,我猜它只是想要图片或快照你的申请
android - APK 应用程序项目不拉 aar 可传递的 deps
我有一个带有这个 gradle 构建脚本的 android 库项目:
然后我有一个带有这个构建脚本的应用程序:
应用插件:'com.android.application'
我正在使用 maven 插件将我的库 sdk 发布到我的本地 maven 存储库: https ://github.com/dcendents/android-maven-plugin
我在我的库项目上运行安装任务,它成功地发布了库 .aar 以及 pom 文件。pom 文件将 gson 列为编译依赖项。
生成的POM文件:
当我运行我的应用程序时,我得到了 gson 类的 java.lang.NoClassDefFoundError。查看apk,我根本看不到gson dep。
我已经读过将扩展“@aar”放在依赖项上,将传递性设置为 false,并且不会拉取传递性依赖项。所以我添加了传递=真。我也试过没有'@aar'扩展名,我遇到了同样的问题。
我正在使用带有 gradle 插件版本 0.14.4 的 Android Studio RC1。
java - 创建 *.aar 库
嗨,我是 Android 开发和使用 Android Studio 的新手。我需要创建 *.aar 库。我创建了新的 Android 库项目(暂时为空)。如何从中生成 *.aar 文件?可以分步骤解释吗?阅读了很多主题,但仍然没有成功。谢谢。
android-studio - Android Studio:如何将我的 .aar 库链接到多个项目?
我有一个在多个项目中使用的库。每次我更新(和重建)这个库时,我不想将 .aar 复制并粘贴到使用这个库的每个项目中。实现此目的最方便、最有效的方法是什么?
注意:我在 Mac OSX 上运行 Android Studio 1.0 RC2。
build - Android Studio RC 1 Gradle 版本在更新后不会编译
在互联网上进行深入搜索后,我找不到任何问题的答案。在我将 android studio 从 beta 升级到 rc1 后,gradle 构建脚本停止工作并出现以下错误:
我的构建脚本如下:
阅读gradle log错误后,有问题的行如下:
这两个文件都在文件夹库中。我不知道如何解决这个问题,所以任何帮助将不胜感激。
EDIT1:idea.log