相关疑难解决方法(0)

如何使用新的Gradle Android Build System手动包含外部aar包

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

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

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

的build.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"
}
Run Code Online (Sandbox Code Playgroud)

编辑:所以答案是它目前不支持,如果你想跟踪它,这是问题.

编辑:目前仍然没有直接支持,最好的替代方案似乎是来自@RanWakshlak的建议解决方案

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

android gradle build.gradle android-gradle-plugin

379
推荐指数
16
解决办法
29万
查看次数

Android Studio无法解析导入的AAR模块中的符号

类似问题中的所有答案都谈论了manderally编辑gradle文件.但我已经使用Android Studio导入AAR文件并检查了build.gradle文件,它们看起来都是正确的.

我的问题是:

进口失败

我已经导入了ShowCaseView v5.0.0 AAR但是当我尝试在Tutorial.java文件中导入类时(你可以看到红色),Android Studio无法识别这些类.Android Studio识别的唯一导入是com.github.amlcurran.showcaseview.R.

我还试图清理和重建项目,关闭并重新打开Android Studio,但它没有帮助.

PS请忽略丢失的XML文件,就像我将它们复制到项目之前一样.

Gradle文件

ShowCaseView-5.0.0> build.gradle:

configurations.create("default")
artifacts.add("default", file('ShowCaseView-5.0.0.aar'))
Run Code Online (Sandbox Code Playgroud)

我的应用程序的build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "com.giraffeweather"
        minSdkVersion 19
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile project(':ShowCaseView-5.0.0')
}
Run Code Online (Sandbox Code Playgroud)

Android Studio项目的build.gradle:

// Top-level build file where you can add configuration options common to …
Run Code Online (Sandbox Code Playgroud)

android gradle showcaseview android-studio aar

12
推荐指数
1
解决办法
1万
查看次数

在Android库项目中包含AAR依赖项

在我的Android Studio Gradle项目中,我使用了几个库,而一个库应该使用本地AAR文件作为依赖项.我使用流行的解决方案将AAR文件作为依赖项包含在我的库项目中:

flatDir {
    dirs 'libs'
}

compile(name: 'aar-library', ext: 'aar')
Run Code Online (Sandbox Code Playgroud)

当我现在尝试同步时,我收到错误消息

无法解决:依赖'aar-library'

在我的主项目中,即使我没有在那里使用/引用AAR文件.如果我只是将AAR文件复制到我的主项目的libs文件夹中也可以.任何的想法?

android android-studio android-gradle-plugin aar

6
推荐指数
1
解决办法
3938
查看次数