在Android Gradle构建中不使用libs文件夹中的Jar文件

时间:2012-10-25 14:44:51

标签: android adt gradle

我刚刚开始使用Android的gradle构建系统。

但是我无法构建我的一个项目。它取决于libs /文件夹中的jar。

gradle build任务中执行compileDebug失败,因为缺少jar文件中的所有类。

这是一个图书馆项目!这是我的build.gradle文件:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.2'
    }
}

apply plugin: 'android-library'

android {
    target='android-16'
    sourceSets {
        main {
            manifest {
                srcFile 'AndroidManifest.xml'
            }
            java {
                srcDir 'src'
            }
            res {
                srcDir 'res'
            }
            assets {
                srcDir 'assets'
            }
            resources {
                srcDir 'src'
            }
        }
    }
}

我错过了一些明显的东西吗?

Goddchen

2 个答案:

答案 0 :(得分:59)

我自己找到了答案:

似乎当前版本的Android Gradle插件不会在libs /文件夹中查找jar。所以你必须自己添加它们:

dependencies {
    compile files('libs/mylib.jar')
}

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
}

将其放在android名称空间中,如下所示:

android {
    target = "android-15"

    dependencies {
        compile fileTree(dir: 'libs', include: '*.jar')
    }
 }

答案 1 :(得分:3)

如果没有一个解决方案适合您,您可能想尝试手动提供* .jar的路径:

compile files('../<your-library-folder>/<your-library>.jar')

'../'部分意味着Gradle将从根项目文件夹(而非app模块)开始搜索库。