Poignard 2, parfois sur la compilation j'obtiens “impossible de trouver le symbole de la classe DaggerApplicationComponent”
Récente après la mise à jour Android Studio (2.0.7) (c'est peut-être la cause) parfois, lors de la construction je reçois cette erreur.
Idée, c'est que généralement la compilation se passe bien mais j'ai parfois l'poignard erreur.
Est possible qui est le problème de la Dague de configuration?
Erreur elle-même:
Executing tasks: [:app:assembleDebug]
Configuration on demand is an incubating feature.
Incremental java compilation is an incubating feature.
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72311Library UP-TO-DATE
:app:prepareComAndroidSupportDesign2311Library UP-TO-DATE
:app:prepareComAndroidSupportMultidex101Library UP-TO-DATE
:app:prepareComAndroidSupportRecyclerviewV72311Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42311Library UP-TO-DATE
:app:prepareComDaimajiaSwipelayoutLibrary120Library UP-TO-DATE
:app:prepareComF2prateekRxPreferencesRxPreferences101Library UP-TO-DATE
:app:prepareComGithubAakiraExpandableLayout141Library UP-TO-DATE
:app:prepareComGithubAfollestadMaterialDialogsCore0842Library UP-TO-DATE
:app:prepareComGithubCastorflexSmoothprogressbarLibraryCircular120Library UP-TO-DATE
:app:prepareComJakewhartonRxbindingRxbinding030Library UP-TO-DATE
:app:prepareComPnikosisMaterialishProgress17Library UP-TO-DATE
:app:prepareComTrelloRxlifecycle040Library UP-TO-DATE
:app:prepareComTrelloRxlifecycleComponents040Library UP-TO-DATE
:app:prepareComWdullaerMaterialdatetimepicker211Library UP-TO-DATE
:app:prepareIoReactivexRxandroid110Library UP-TO-DATE
:app:prepareMeRelexCircleindicator116Library UP-TO-DATE
:app:prepareMeZhanghaiAndroidMaterialprogressbarLibrary114Library UP-TO-DATE
:app:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest UP-TO-DATE
:app:processDebugResources UP-TO-DATE
:app:generateDebugSources UP-TO-DATE
:app:compileDebugJavaWithJavac
/home/ungvas/AndroidDev/Projects/FW/paynet-android/app/src/main/java/md/fusionworks/paynet/ui/activity/BaseActivity.java:23: error: cannot find symbol
import md.fusionworks.paynet.di.component.DaggerActivityComponent;
^
symbol: class DaggerActivityComponent
location: package md.fusionworks.paynet.di.component
/home/ungvas/AndroidDev/Projects/FW/paynet-android/app/src/main/java/md/fusionworks/paynet/PaynetApplication.java:7: error: cannot find symbol
import md.fusionworks.paynet.di.component.DaggerApplicationComponent;
^
symbol: class DaggerApplicationComponent
location: package md.fusionworks.paynet.di.component
2 errors
Incremental compilation of 66 classes completed in 3.719 secs.
:app:compileDebugJavaWithJavac FAILED
:app:compileRetrolambdaDebug
FAILURE: Build failed with an exception.
-
What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'.Compilation failed; see the compiler error output for details.
-
Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 19.556 secs
Merci.
- Vous devez fournir l'ensemble du journal des erreurs, car la plupart du temps ceci est accompagné par plus d'erreurs générées par la dague, comme de ne pas providable des classes ou des dépendances circulaires, ...
- êtes-vous à l'aide de gradle 2.10 ?
- ce gradle version utilisez-vous?
- Désolé oui gradle 2.10 ))
- j'ai le même avec la 2.10, 2.8 est ok mais avec 2.8 je ne peux pas utiliser "instantanée run" avec le dernier android studio plugin gradle (je pense qu'il a quelque chose à voir avec compilation incrémentielle)
- Merci!Hmm... intéressant gars de gradle de travail sur cette question?
- je n'ai aucune idée verte...
- Je vais avoir le même problème: Gradle 2.10 Android plugin 2.0.0-alpha7
- toute personne en mesure de résoudre ce problème? Je suis en train de lancer github.com/chiuki/android-test-demo et il me fait la même erreur
Vous devez vous connecter pour publier un commentaire.
Il semble qu'il ont quelque chose à voir avec compilation incrémentielle ajouté dans Gradle 2.10
J'ai réussi à le résoudre en ajoutant la commande suivante pour gradle:
Vous pouvez l'ajouter dans Android Studio: Fichier | Paramètres | Construire, l'Exécution, le Déploiement | Compilateur l'ajout option de ligne de Commande.
modifier de 2.0.0-beta3 le plugin donne un avertissement vous indiquant que cette option a été ajoutée à la Gradle DSL:
Changements en 2017:
Android Studio Canaries utilise une version plus récente de Gradle et apt plugins ne peuvent pas travailler, remplacé par
annotationProcessor
. Il peut échouer en dépit de l'avertissement du compilateur disant qu'elle sera supprimée dans une future version de gradle.Changer cette dépendance ligne:
apt 'com.google.dagger:dagger-compiler:2.7'
à
annotationProcessor 'com.google.dagger:dagger-compiler:2.7'
et supprimer les apt plugin.
Vous devez mettre à jour votre version
2.11
de poignard.Votre
build.gradle
's dépendances bloc ressemble à ce qui suit.Espère que cette aide.
La dernière version de Poignard (2.8) est à l'origine de cette erreur. Assurez-vous que vos dépendances sont mentionnées ci-dessous
apt 'com.google.dagger:dagger-compiler:2.7'
compile 'com.google.dagger:dagger:2.7'
J'ai eu un problème similaire, mais pour des raisons différentes.
J'ai eu le seul problème lorsque vous essayez de générer le fichier apk. Sinon, il a été fonctionne correctement.
Dans mon cas, le problème est que la classe était dans le
test
répertoire au lieu de lamain
répertoire pour une raison inconnue, je l'ai déplacé à main et cela a fonctionné.Espérons que cela aide quelqu'un
Fichier->InvalidateCaches/Redémarrage a fonctionné pour moi
J'ai été en utilisant un pur Java module Bibliothèque, mais a été à l'aide de la kotlin plugin et le poignard dépendances, comme ceci:
construire.gradle
L'erreur a été, j'en ai oublié d'ajouter le
kotlin-kapt
plugin. Donc, mon construire.gradle le fichier se termine comme ceci:Assurez-vous d'utiliser la version Java 1.7. Aussi, si quelque chose est cassé dans votre poignard pipeline, il sera la cause de cette erreur ainsi.
Dans mon cas, aucun des travaux ci-dessus.
Suivez les étapes pour générer
DaggerApplicationComponent
classe.Fait
utiliser le même poignard version pour tout le poignard dépendances. a travaillé pour moi.
kapt
de la déclaration au lieu de laannotationProcessor
déclarations. Après avoir changé le mot clé le Dagger2 code de générer et de ne pas briser une heure plus tard.Tout d'abord, ajoutez cette ligne à la des dépendances dans le buildscript dans le Projet de construction.gradle fichier.
Deuxième, ajoutez cette ligne au-dessus dans le Module: une application pour les construire.gradle fichier
J'ai eu ce problème mais c'était deux échecs lors de la construction. L'un était l'élément manquant, mais l'autre était un ButterKnife @BindView n'arrivais pas à trouver le point de vue. La fixation de ce fixe le composant manquant. Je suppose que tout a échoué annotation processing va causer des problèmes similaires.
Essayez d'exécuter l'application, la compilation échouera et vous aurez la possibilité d'importer les classes alors.
Cela se produit parce que la dague seulement les importations de ces classes au cours de l'exécution et non pas au moment de la compilation.
Dans mon cas de presenter je n'ai pas utilisé
@Inject
annotation pour la méthode de remplacement du gestionnaire de données et etc.Vérifiez vos annotations partout pour prticular composant et module. Mine problème a été j'ai été en utilisant @Nommé dans le module, mais pas la définition dans le constructeur.
Pour le cas où j'ai reçu cette erreur, l'erreur a été hors-la-marque dans ce une erreur avec DaggerMyComponent a été signalé, mais la cause est que-d'ailleurs dans le code, j'avais, à tort, utilisé ButterKnife de @BindView avec une vue privée de type de membre; la fixation de ce qui a éliminé l'erreur.
C'est très câblé problème que j'ai en face! je n'ai aucune idée de pourquoi est-ce lié à la Dague!
- Je utiliser ButterKnife pour la liaison points de vue, mais d'une façon ou dans le codage (Rush copier/coller!) j'ai écrit deux points de vue différents avec même id comme ci-dessous (à la fois de la vue avec fab id)
Après avoir essayé d'exécuter l'app lancer cette erreur sur l'onglet construire
Et d'erreur du compilateur est
Je sais que cela semble ridicule, mais il m'arrive à moi et après fixer les id mon problème est résolu.
Code Fixe
L'espoir d'aider quelqu'un.
Mise à JOUR
Une fois de plus il se passe pour moi, après un an et même id dans RecyclerView Adaptateur ids