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

Posted

技术标签:

【中文标题】Android Gradle 构建中不使用 libs 文件夹中的 Jar 文件【英文标题】:Jar files in libs folder are not used in Android Gradle build 【发布时间】: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'
            
        
    

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

上帝

【问题讨论】:

【参考方案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 将从根项目文件夹(而不是应用模块)开始搜索库。

【讨论】:

以上是关于Android Gradle 构建中不使用 libs 文件夹中的 Jar 文件的主要内容,如果未能解决你的问题,请参考以下文章

android--jenkins+gradle+android自动化构建apk步骤(转)

Android studio第一次使用配置gradle项目构建

Android Studio:使用 Gradle KTS 构建文件的项目结构不可用

导入项目(Eclipse ADT、Gradle 等)选项在 Android Studio 2.3.2 中不退出

android studio,如何为发布版本制作签名的 apk(使用 KTS 构建文件的 gradle)

[转]第一次使用Android Studio时你应该知道的一切配置:gradle项目构建