【问题标题】:Jar files in libs folder are not used in Android Gradle buildAndroid Gradle 构建中不使用 libs 文件夹中的 Jar 文件
【发布时间】:2012-10-15 18:55:14
【问题描述】:

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

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

compileDebug 任务中执行gradle build 失败,因为缺少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'
            }
        }
    }
}

我错过了什么明显的东西吗?

上帝

【问题讨论】:

    标签: android adt gradle


    【解决方案1】:

    我自己找到了答案:

    似乎当前版本的 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')
        }
     }
    

    【讨论】:

      【解决方案2】:

      以防万一解决方案都不适合您,您可能需要尝试手动提供 *.jar 的路径:

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

      '../' 部分表示 Gradle 将从根项目文件夹(而不是应用模块)开始搜索库。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-05-09
        • 2023-01-31
        • 1970-01-01
        • 2020-08-31
        • 1970-01-01
        • 1970-01-01
        • 2018-05-09
        相关资源
        最近更新 更多