web-dev-qa-db-fra.com

Liaison de données Android: le package n'existe pas

J'essaie d'utiliser la liaison de données avec Android.

Je ne peux plus construire mon projet. J'ai eu cette erreur:

"Erreur: (13, 46) erreur: le paquet ch.company.project.databinding n’a pas Existé"

Voici ma gradle:

http://Pastebin.com/dkXd1Mxr

et 

http://Pastebin.com/n9hkFWGQ

Et voici la sortie gradle:

https://Pastebin.com/w93Rausg

22
Xero

Merci à Yigit!

Le problème n'était pas un lien direct vers Android Databinding . Il y avait un bogue dans le projet (certaines variables n'étaient pas correctement définies)

Je recommanderais d'utiliser gradle avec "--debug and --stacktrace" pour plus d'informations, cela aide beaucoup.

32
Xero

Le bogue n'est pas le package DataBinding, c'est une erreur syntaxique ou logique. Par exemple, vous avez l'attribut "lastName" dans votre POJO, mais dans la présentation, il s'agit de Android:text="@{user.lastname}"

Vérifiez votre "mise en page" et faites reconstruire le projet.

12
Edhy

Sur mon cas particulier, j'utilisais Dagger 2. Cette erreur de package apparaît dans de nombreuses classes sans relation avec l'erreur d'origine: une erreur d'injection de dépendance.

Rappel heureux: Faites défiler davantage sur votre pile pour savoir quel est le véritable problème.

2

J'ai été coincé avec la même erreur pendant des heures. Après avoir essayé plusieurs solutions de stackoverflow, j'ai mis à jour mon projet avec des dépendances stables. 

Cela n’avait toujours pas été résolu, mais avec la même dépendance vis-à-vis des diplômés, DataBinding fonctionnait parfaitement dans un autre de mes projets. 

Donc, je suis allé dans le dossier du projet en utilisant Explorer et Supprimé 2 choses. 

  1. construire un dossier 
  2. tous les fichiers de .idea/libraries

Après cela, j'ai synchronisé le projet et il a continué à bien fonctionner. 

2
Ifta

J'ai eu des problèmes similaires avec mon projet

Tu pourrais essayer:

  • recherche dans les fichiers xml les erreurs qui provoquent un échec de la construction
  • projet propre
  • Fichier - invalider les caches/redémarrer 
2
Liviu

Assurez-vous que les champs de votre modèle auxquels vous faites référence dans la présentation ont des modificateurs d'accès public

1
YTerle

J'ai eu l'erreur:

Erreur: (9, 46) erreur: le package com.company.www.bar.databinding ne le fait pas exister.

je supprime juste le signe "=". ça a fonctionné pour moi

À partir de ceci:

 <Button
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content"
            Android:onClick="@={()->activity.onButtonClick()}"/>

à :

<Button
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content"
            Android:onClick="@{()->activity.onButtonClick()}"/>
1
vishal gupta

Pour vous débarrasser de cette erreur, insérez simplement votre schéma de configuration complet dans une balise de schéma simple dans le fichier activity_main.xml.

Après avoir passé de nombreuses heures à trouver une solution, cela a fonctionné pour moi. Essaie.

0
Harshal baraskar