【问题标题】:Issue with finding gradle built project查找 gradle build 项目的问题
【发布时间】:2026-02-23 06:35:01
【问题描述】:

我正在使用一些 plugin actionbarpulltorefresh,但在我的代码中 PullToRefreshLayout 没有被 ide 解析。这是我的build.gradle文件,问题是我找不到这个插件的任何源文件,在.gradle目录下什么都没有

我有一些build.gradle 存档

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

apply plugin: 'android'

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile 'com.github.chrisbanes.actionbarpulltorefresh:library:+'
}

android {
    compileSdkVersion 18
    buildToolsVersion '18'

    defaultConfig {
        targetSdkVersion 18
    }

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            res.srcDirs = ['res']
        }
    }
}

编辑:当我放

import uk.co.senab.actionbarpulltorefresh.library.PullToRefreshLayout; 
private PullToRefreshLayout mPullToRefreshLayout;

我收到消息can not resolve symbol PullToRefreshLayout。 我正在使用android studio 所基于的SAT 版本intelliJ

【问题讨论】:

  • IDE 的错误是什么?以及您使用的是哪个 android studio 版本
  • @user2511882 查看我的更新!
  • 你在使用 actionbarsherlock 吗?还是 actionbarcompat?
  • @user2511882 不,我应该?如果,是的,是哪一个?
  • 只需在控制台中运行 ./gradlew --refresh-dependencies

标签: java android gradle


【解决方案1】:

如果你升级到所有东西的新版本,你会有更好的运气:

  • Android Studio 0.4.3。
  • Android Gradle 插件 0.8。您必须将 build.gradle 中的 classpath 编辑为:

    classpath 'com.android.tools.build:gradle:0.8.+'
    
  • Gradle 1.10。您必须将 gradle/wrapper/gradle-wrapper.properties 中的 distributionUrl 编辑为:

    distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-bin.zip
    
  • SDK 管理器 中下载 19.0.1 Android SDK 构建工具 并指示构建在您的 build.gradle中使用它们>:

        buildToolsVersion '19.0.1'
    

在 Android Studio 0.4.3 中修复了一个错误,我认为这是导致它看不到 actionbarpulltorefresh 库中的类的原因;您的项目需要新版本的插件和 Gradle 才能在 0.4.3 中运行。如果您升级 Android Studio,它应该会检测到旧版本的插件和 Gradle 并提供为您更改它们,但如果没有,那么您可以手动编辑。它不会提供更新构建工具版本;你必须自己做。

【讨论】:

  • 对不起,实际上升级似乎非常困难,因为设置gradle 1.10 会抛出该类型的错误:http://*.com/questions/21356015/issue-with-finding-gradle-built-project/21357198?noredirect=1#21357198,设置gradle 1.9 会抛出我需要的gradle 1.6,这是不支持的Android Studio...所以,我的问题是,从build.gradle 文件下载的文件存储在哪里(` compile 'com.github.chrisbanes.actionbarpulltorefresh:library:+'`)?
  • 如果它抱怨它需要 Gradle 1.6,那是因为您没有在构建文件中更新 Android Gradle 版本——请确保它设置为 0.8,正如我在回答中指出的那样。很少需要在 Gradle 的缓存文件夹中进行挖掘。
  • 所以我下载了Android Studio,我设置了classpath 'com.android.tools.build:gradle:0.8.+',我将gradle 设置为gradle 1.10,但我收到了这条消息Can't find org.gradle.api.artifacts.result.ResolvedModuleVersionResult。我能做什么?
  • 这个错误通常意味着有些地方插件版本仍然没有设置为 0.8。你检查过你所有的 build.gradle 文件了吗?
  • 我想我能找到这些设置的唯一地方是我的libs 目录中的jar 文件。但是我怎样才能找到并 grep 设置。顺便说一句,在那里更改设置是否安全?