Android Studio - la syntaxe 'ne peut pas résoudre le symbole' souligne les erreurs même si build est ok

j'ai un problème vraiment ennuyeux depuis plusieurs jours, après que j'ai essayé de restaurer un projet studio Android précédemment en travail à partir d'une sauvegarde, après avoir obtenu un nouvel ordinateur.

j'ai le " ne peut pas résoudre le symbole " syntaxe mettant en évidence le problème avec les classes des bibliothèques Android telles que android.support.v7.app , android.support.v4.app , et les services Google Play, que j'ai inclus comme dépendances. Mais, le projet se construit bien et je peux lancer L'application sur téléphone sans aucun problème.

j'ai vérifié si ces fichiers jar existent sous l'installation SDK - par exemple"sdkextrasandroidm2repositorycomandroidsupportappcompat-v723.0.1".

mon problème est assez similaire à ceux rapportés dans les billets ci-dessous:

  1. Android Studio dit "ne peut pas résoudre le symbole" mais le projet compile
  2. Android Studio ne peut pas résoudre le symbole mais le code s'exécute correctement
  3. Android Studio soudainement ne peut pas résoudre les symboles

j'ai essayé toutes les solutions fournies dans diverses discussions stackoverflow (i.e. Sync Gradle Project, invalid Cache/Restart, Clean/Rebuild, Deleting gradle generated files (.Grad, construire, .répertoires d'idées, etc.), de le rétrograder à la baisse de l'API et de mise à niveau, etc. Mais, aucune méthode n'est utile.

J'utilise Android Studio 1.3.2 et API 23. Tous les outils de construction, bibliothèque de soutien, etc. sont à jour (essayé avec les deux v22.+ et v23.+ des bibliothèques).

s'il vous Plaît aider si vous avez d'autres suggestions!

extrait de ma construction.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.+'
}

des captures d'écran des problèmes peuvent également être trouvées ci-dessous. Je pense que Android Studio N'est pas en mesure d'importer les bibliothèques dépendantes pour la mise en évidence de la syntaxe, bien que le compilateur est capable de les inclure et construire avec succès.

Capture d'écran : Syntax highlight and auto-complete issue

6
demandé sur Community 2015-09-09 13:26:16

3 réponses

la raison est que j'ai eu un !' symbole dans mon chemin de projet. Apparemment, comme je l'ai appris maintenant, beaucoup de programmes Java échouent à cause de cette raison! :- )

je viens de renommer le chemin et il fonctionne très bien maintenant: -)


P. S.

Merci @gabriele-mariotti pour la suggestion gradlew clean . En fait, ça m'a aidé à trouver la vraie cause. Je n'ai pas pu courir gradlew de le terminal en raison d'un RuntimeException :

Could not determine wrapper version. at org.gradle.wrapper.GradleWrapperMain.wrapperVersion

mais cela m'a aidé à apprendre sur l'effet de '! symbole de des chemins, et à la cause racine du problème. Merci à vous tous!

3
répondu Jim C 2015-09-09 11:11:40

Vous pouvez essayer:

  • Open Module Settings , changez la valeur de compile SDK version (vous pouvez choisir le numéro de version minimum)
  • attendre que Android Studio finisse de rafraîchir
  • assurez-vous que vous avez importé:

    import android.support.v4.app.FragmentActivity

  • ouvrir Module Settings de nouveau et vous devez revenir en arrière compile SDK version , le numéro de version originale avant de le changer.

  • attendre que Android Studio finisse de rafraîchir
1
répondu Gladys Sanchez 2018-03-16 09:43:48

j'ai eu ce même problème avec deux bibliothèques dans notre projet, com.koushikdutta.ion et uk.co.senab.photoview qui sont utilisés tout au long de notre projet multi-app, mais sont déclarés comme des dépendances au fond d'un projet de bibliothèque. Les symptômes étaient comme ceci:

  • je pouvais parfaitement compiler et exécuter l'application
  • L'IDE a obstinément refusé de trouver les classes de ces les bibliothèques et aucune navigation vers leur code source n'était possible, beaucoup d'erreurs (barres rouges) étaient associées à toutes les classes qui les utilisaient; les usages de classe étaient surlignés en rouge, aucune suggestion de code, vous l'appelez.

ma solution est la suivante: tout d'abord, fermez Android Studio. Puis:

cd <your-project-folder>
mv .idea/ .idea-old/ 
mv <projectname>.iml <projectname>.iml-old

ré-ouvrez Android Studio mais sélectionnez l'option"Ouvrir un projet Android Studio existant". Attendre que le projet soit réparé et profiter parfaite propreté.

0
répondu finzic 2018-08-30 13:33:01