• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

android - 如何使用 Gradle for Android 手动包含外部 aar 包

[复制链接]
菜鸟教程小白 发表于 2022-8-1 01:21:19 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我一直在尝试新的 android 构建系统,但遇到了一个小问题。我已经编译了我自己的 ActionBarSherlock 的 aar 包,我称之为“actionbarsherlock.aar”。我想要做的是实际上使用这个 aar 来构建我的最终 APK。如果我使用编译项目(':actionbarsherlock')将整个 ActionBarSherlock 库作为 android-library 模块包含到我的主项目中,我就可以成功构建而不会出现任何问题。

但是我的问题是,我想手动提供该依赖项作为 aar 文件包,就像我想要一个 JAR 一样,那么我似乎无法弄清楚如何将它正确地包含到我的项目中。我尝试使用编译配置,但这似乎不起作用。我在编译过程中一直找不到符号,这告诉我 aar 包中的 classes.jar 没有包含在类路径中。

有谁知道手动将 aar 包作为文件包含的语法?

构建.gradle

buildscript {

 repositories {
     mavenCentral()
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:0.4'
  }
}
apply plugin: 'android'

repositories {
   mavenCentral()
}
dependencies {
    compile files('libs/actionbarsherlock.aar')
}

android {
    compileSdkVersion 15
    buildToolsVersion "17.0"
}

编辑:所以答案是它目前不受支持,这里是 issue如果你想跟踪它。

编辑:目前仍然不直接支持,最好的选择似乎是@RanWakshlak 提出的解决方案

编辑:使用@VipulShah 提出的语法也更简单



Best Answer-推荐答案


请按照以下步骤使其正常工作(我已将其测试到 Android Studio 2.2)
假设您将 aar 文件保存在 libs 文件夹中。 (假设文件名是cards.aar)
然后在应用程序 build.gradle指定以下并单击与 Gradle 文件同步项目。
打开项目级 build.gradle 并添加 flatDir{dirs 'libs'}像下面那样

allprojects {
   repositories {
      jcenter()
      flatDir {
        dirs 'libs'
      }
   }
}
现在打开应用级 build.grdle 文件并添加 .aar文件
    dependencies {
       implementation(name:'cards', ext:'aar')
}
如果一切顺利,您将看到在 build -> exploded-aar 中创建了库条目
另请注意,如果您从另一个具有依赖项的项目中导入 .aar 文件,您也需要在 build.gradle 中包含这些文件。

关于android - 如何使用 Gradle for Android 手动包含外部 aar 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16682847/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap