Gradle构建后,Android Studio无法找到库类

时间:2013-06-02 12:39:59

标签: android dependencies gradle android-studio

我正在尝试将.jar库添加到我的项目中/libs文件夹中。这是我的grade.build

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

    dependencies {
        compile files('libs/android-support-v4.jar', 'libs/java-api-wrapper-1.2.0-all.jar')
    }

    android {
        compileSdkVersion 17
        buildToolsVersion "17.0.0"

        defaultConfig {
            minSdkVersion 15
            targetSdkVersion 16
        }
    }

在我添加之后,我构建了我的项目并且没有错误。但是当我尝试在我的代码private ApiWrapper wrapper中使用该类时,我收到一个错误:

Gradle: error: cannot find symbol class ApiWrapper

我无法找到错误的位置。我的grade.build不行,或者我应该以其他方式构建它?

6 个答案:

答案 0 :(得分:24)

使用命令行,在项目的根目录中运行:
./gradlew clean && ./gradlew build

然后在工作室中重新编译你的项目,你应该看到你的新lib。

答案 1 :(得分:15)

将build.gradle中的所有库项目 minifyEnabled设置为false 。 请参阅Scott Barta在此主题中接受的答案。

See accepted answer by Scott Barta in this thread

答案 2 :(得分:9)

  • 作为第一个选项,我认为足够Syncronizing the Project with Gradle Files

enter image description here

  • 另一个选项,从命令行运行位于项目文件夹中的批处理文件gradlew.bat

enter image description here

./gradlew clean && ./gradlew build

答案 3 :(得分:9)

  

转到文件⇒使缓存无效并重新启动

解决了我的问题

答案 4 :(得分:4)

我遇到过类似的情况,即Android Studio无法找到确实存在的库。即使我能够在Android Studio中编译项目,从模拟器或物理设备上的Android Studio运行该项目,并使用gradlew从命令行对其进行构建,Android Studio IDE仍抱怨Cannot resolve symbol 'ConstraintLayout'。我相信我已正确导入了该库,因为我遵循了Google的说明:https://developer.android.com/training/constraint-layout/#add-constraintlayout-to-your-project

无论如何,我最终解决了如下问题:

  1. 关闭Android Studio
  2. 删除项目目录中的.idea文件夹
  3. 打开Android Studio
  4. 重新导入项目,以便Android Studio可以重新生成.idea文件夹

这实际上解决了问题。我相信当天早些时候完成“ Android Studio”>“检查更新”后,Android Studio会以某种方式损坏.idea文件夹。

答案 5 :(得分:0)

转到 Android Studio 文件并按无效缓存/重启。这对我找到图书馆有用