2014-01-13 96 views
154

Android Studio 0.4.2工作正常,今天我打开它,几乎所有东西都是红色的,自动完成已停止工作。我看着进口和AS似乎告诉我它突然找不到android.support.v4(为我提供删除未使用的导入选项)。 (android.support.v7似乎很好,但)。Android Studio突然无法解析符号

事情我已经尝试:

  • 重建项目
  • 清洁项目
  • 与摇篮文件
  • 关闭项目,关闭AS和重新发动/重启
  • 文件>的Invalidate正在同步Caches/Restart
  • 检查Lint,没有看到任何明显的东西
  • 双重检查所有支持库在SDK管理器中是最新的
  • 检查我的Build.gradle,虽然没有变化,它和往常一样,一直工作的方式。

这是在情况下,它是相关的:

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

repositories { 
    mavenCentral() 
} 

android { 
    compileSdkVersion 19 
    buildToolsVersion '19.0.0' 

    defaultConfig { 
     minSdkVersion 8 
     targetSdkVersion 19 
    } 
} 

dependencies { 
    compile 'com.android.support:support-v4:19.0.0' 
    compile 'com.android.support:gridlayout-v7:19.0.0' 
    compile 'com.android.support:appcompat-v7:19.0.0' 
    compile 'com.google.android.gms:play-services:4.0.30' 
    compile project(':libraries:facebook') 
    compile files('libs/core.jar') 
} 

当我打“同步与摇篮”,打开“项目设置”我得到一个红色的错误告诉我,我有重复的库引用,并删除未使用的.. enter image description here

我的项目编译和运行良好,但我真的需要自动完成工作!有没有人有什么建议?

enter image description here

+28

每一个Android Studio更新都会破坏项目,我已经厌倦了它。为什么他们不能坚持并发布一个可用的版本。 –

+1

清洁或删除任何文件之前,请先阅读此答案。它可以解决你的问题。 http://stackoverflow.com/a/19223269/513413 – Hesam

+9

“失效缓存/重启”为我工作。 –

回答

128

你已经大不如前的大多数事情,这将是有益的名单,但你可以尝试:

  • 结束Android工作室
  • 备份您的项目
  • 删除所有.iml文件和.idea文件夹
  • 重新启动Android Studio并重新导入您的项目

顺便说一下,您在Project Structure对话框中看到的错误消息大部分都是假的。

UPDATE:

过Android Studio 0.4.3是在金丝雀更新频道可用,并且应该有希望解决大部分问题。可能存在一些悬而未决的问题;如果您在0.4.3中看到它们,请告诉我们,并尝试为我们提供一套可靠的重现步骤,以确保我们已经关注了所有代码路径。

+0

哇这个答案是美丽的感谢所以该死的似乎现在正在工作\ O /:D –

+0

还有一条评论我发现我每次都在更换机器时都会这样做,这很有趣 - 没什么大不了,但是一个烦恼都一样,不知道实际问题可能是什么 –

+0

这对我有效。我正忙着这个,整整一天想弄明白!感谢你的回答。 –

1

今天早上和同样的问题挣扎了几个小时。从命令行构建我的项目似乎为我做了诀窍。

具体步骤 -

  1. 克隆新鲜库(没有一款Android工作室文件在回购)命令行(./gradlew干净assembleDebug)
  2. 打开Android工作室,引进项目
  3. 内置调试项目

要检查它是否有效,请在您的项目中查看exploded-bundles文件夹,检查库并查找classes.jar。如果它是可扩展的,那么一切都会好起来的。

编辑 - 我发现在Android工作室做了一个干净的工作后,它再次爆发。所以如果你必须清理,你将需要再次完成这个过程。

+0

我不知道是什么问题,但gradle干净assemblerDebug工作和eveything现在是好的 – Killer

256

这里前面提到的事情都没有为我实际工作。但后来我在文件菜单Invalidate Caches/Restart中发现了这个菜单条目,这似乎解决了问题。

我真的不知道后台发生了什么,但是当Android Studio再次启动时,状态栏显示Indexing...约一分钟左右,这显然没有奇迹。

仅供参考我正在使用Android Studio 0.5.4。

+2

为我工作0.5.9 –

+15

对我来说,我有一个电源故障时,Android Studio 0.8.2加载,它不会承认我的任何java导入,一切都只是红色。这对我有用,谢谢! – Simon

+2

我正在使用android studio 1.0.2,当我打开我的项目,我充满了红色的错误。我解决了它由android studio - >文件 - >无效chaches /重新启动。当我的项目重新启动它的工作..没有红色错误 – SoftEye

1

这些方法在Android Studio 0.5.8中都没有帮助。

我的解决方案是删除〜/ .AndroidStudioPreview目录(在Ubuntu中)。对不起,我不知道其他操作系统在哪里。该目录存储临时文件和Android Studio设置,所以我错过了所有设置。但它的作品!

+0

也为我工作。 (基本操作系统上的Android Studio 0.6.0) – rogeriolino

2

以为我会扔了这一点,有太多:

这工作对我来说是改变我的构建变量回到以前工作的变型的东西。出于某种原因,我之前改变了这一点(我忘记了为什么)。无论哪种方式,最好的办法就是尽量记住那一天你改变了什么(它可能会像清洁一样小,或者回到以前的git提交)......等等。

它也有助于尝试重新同步gradle并强制重建。

1

另一种方法是下载JDK 1.7,并更改错误从Android Studio中的路径message..and选择谁被包含在JDK 1.7文件夹

0

我遇到了类似的问题,但我跟着以下步骤Home文件夹我的情况: -

1).idea项目在.idea文件夹下打开modules.xml。 2)。检查相同的iml文件是否有两个条目。 3)删除重复的条目之一并关闭android studio或重新生成gradle文件。

在我的情况下,它的工作。 希望它有帮助

1

今天有同样的问题。通过将项目结构中的jdk位置从\java\jdk1.7.0_05更改为\java\jdk1.7.0_25(直到现在我还不知道)来修复它。

我使用的是Android Studio 0.8.6。

0

我通过设置JDK解决了问题。当我将鼠标放在错误上时,出现了一个弹出窗口,提示安装JDK。

0

我有同样的问题,这里列出的解决方案都没有工作。问题是我的源文件不在正确的文件夹内。

的目录结构必须是:

[project]\[module]\src\main\java\[yourpackage]\[yourclass.java]

9

对我来说,这是一个 “progaurd” 打造我的build.gradle条目。我删除了整个构建部分,然后重新同步并解决了问题。

+0

为我工作!谢谢!使用canary build 1.0RC 1. 使用'minifyEnabled true'或'minifyEnabled false'并且不定义'proguardFiles'。 – Kalem

+0

另外不要忘记,AndroidLibrary项目不运行proguard http://stackoverflow.com/a/10992604/665823。 – Kalem

0

我终于弄清楚是什么原因导致了这个问题。

实际上,您应该避免将.idea/libraries文件夹推送到您的存储库。它会在Android Studio中创建奇怪的东西,这往往会删除所有下载的库。

如果您有提交历史记录,只需重新创建所有缺少的库文件并避免它们再次提交。否则,只需删除整个.idea文件夹并将其重新导入AS。

0

尝试使用这些值更改您的build.gradle:

的Android { compileSdkVersion 18 buildToolsVersion '21 .0.1'

defaultConfig { 
    minSdkVersion 18 
    targetSdkVersion 18 
} 
13

的Android 1.3工作室

  1. 开放模块设置
  2. 点击您的模块下模块菜单
  3. 属性选项卡上源兼容性目标兼容性设置为您的Java版本。

我没有做任何事情,它为我工作。

+0

我在哪里可以找到模块设置? – bendaf

+2

@bendaf右键单击资源管理器中的模块并选择“打开模块设置” –

0

我使用共享偏好设置,但Android Studio抱怨编辑器符号。然后,我添加了

import android.content.SharedPreferences.Editor; 

现在符号很酷。

0

请检查您是否有一个具有特殊字符的项目路径! (感叹号)。

similar problem that I experienced中,这是根本原因 - 因为许多Java应用程序似乎不容忍这种特殊字符(例如,从终端执行'gradlew clean'会失败并抛出RunTimeException。)。 在网上发布的其他解决方案都无济于事。但是,一旦我删除了!从道路上做了一个干净的构建,Android Studio神奇地工作。

0

我试过这里列出的所有东西。 然后我检查了我的androidmanifest.xml 由于文件夹重命名&程序包重命名,我有一些stoopid不匹配。

0

在我的多模块项目中,问题在于模块A中“com.android.support:appcompat-v7”的版本是“22.0.0”,但是在B - “22.2.0”中。

解决方案:确保
1.公共库的版本在模块之间相同。
2.每个模块编译没有任何错误(尝试从CLI构建它们中的每一个)。

0

请注意,文件和特殊文件夹的名称可能会导致此错误。例如,如果你有一个文件夹“Helpers”,并且该文件夹中的文件包是“com.whatever.helpers”,它不会导致任何编译错误,但会导致Android Studio无法加载该文件夹中的符号。 一个典型的原因是,当您用第一个大写字母命名文件夹时,在Git上提交它,然后将文件夹名称更改为全部小写。 Git系统不会识别导致只有新存储库克隆将受到影响的本地和远程存储库之间的差异的更改。

35

通过链接,它为我工作。

1.)从android studio左上角的菜单中选择File选项。

2.)选择选项:“Invalidate Cache/Restart ..”它将打开一个对话框。

3)点击与选项的第一个按钮:“无效,并重新启动”

4)将关闭工作室,并重新启动它。开始编制项目索引。

它解决了我的问题:

文件 - >无效高速缓存/重新启动 - >无效,并重新启动

来源: https://www.youtube.com/watch?v=FX_gCTpqhwM

+0

它适合我! –

0

我有很多陌生人的解决方案。如果有人遇到这种情况,值得仔细检查你的gradle文件。事实证明,当我克隆这个git和gradle正在运行时,它从我的build.gradle(app)文件中删除了一行。

dependencies { 
    provided files(providedFiles) 

很明显,这里的问题只是将其添加回来并与gradle重新同步。

相关问题