Android Studio - "无法解析符号"语法突出显示错误,尽管构建正常

Jim*_*m C 6 java android intellij-idea android-studio android-gradle-plugin

在获得一台新计算机后,我尝试从备份中恢复以前正在运行的Android Studio项目几天后,我有一个非常讨厌的问题.

我有"不能解析符号"语法高亮的问题与Android的库如类android.support.v7.app,android.support.v4.app和谷歌播放服务,这是我列为依赖关系.但是,该项目构建良好,我可以在手机上运行应用程序没有问题.

我已经验证了SDK安装下是否存在这些jar文件 - 例如"\ sdk\extras\android\m2repository\com\android\support\appcompat-v7\23.0.1".

我的问题非常类似于以下帖子中报道的问题:

  1. Android Studio说"无法解析符号",但项目编译
  2. Android Studio无法解析符号,但代码正确执行
  3. Android Studio突然无法解析符号

我已经尝试了各种stackoverflow讨论中提供的所有解决方案(即同步Gradle项目,无效缓存/重启,清理/重建,删除gradle生成的文件(.gradle,build,.idea目录等),降级到较低的API和升级等但是,没有方法是有帮助的.

我使用Android Studio 1.3.2和API 23.所有构建工具,支持库等都是最新的(尝试使用v22.+和v23.+库).

如果您有任何其他建议,请帮忙!

从我的build.gradle中提取:

apply plugin: 'com.android.application'
android {
        compileSdkVersion 22
        buildToolsVersion '23.0.1'

defaultConfig {
    applicationId "com.myapp.fun"
    minSdkVersion 22
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:support-v4:22.+'
    compile 'com.android.support:appcompat-v7:22.+'
}
Run Code Online (Sandbox Code Playgroud)

问题的屏幕截图也可以在下面找到.我认为Android Studio无法导入依赖库以进行语法突出显示,尽管编译器能够包含它们并成功构建.

截图:语法高亮和自动完成问题

Jim*_*m C 3

原因是因为我有一个'!' 我的项目路径中的符号。显然,正如我现在了解到的,许多 Java 程序都是由于这个原因而失败的!:-)

我刚刚重命名了路径,现在工作正常:-)


聚苯乙烯

谢谢@gabriele-mariotti 的建议gradlew clean。事实上,这帮助我找到了真正的根本原因。由于以下原因,我无法gradlew从终端运行RuntimeException

Could not determine wrapper version. at org.gradle.wrapper.GradleWrapperMain.wrapperVersion
Run Code Online (Sandbox Code Playgroud)

但这帮助我了解了“!”的效果。路径上的符号,以及问题的根本原因。谢谢你们!