2016-05-09 10 views
8

In Android Studio 2.1, die Kompilierung Fehlermeldungen von xml Fehlern zu bekommen sind völlig nicht-nützlich:android Datenbindung: Wie nützlich Fehlermeldungen

Error:(11, 41) error: package mypackage.databinding does not exist 
Error:(15, 13) error: cannot find symbol class MyActivityBinding 

Der eigentliche Fehler in der Regel wäre so etwas wie „es gibt keine solch ein Attribut android:adapter ", oder" Variable foo enthält keine Eigenschaftsleiste "oder so ähnlich. Aber anstatt solche Fehler tatsächlich zu zeigen, zeigt es die obigen nicht hilfreichen, die Ihnen nur sagen, dass die Bindungen wegen eines unbekannten Fehlers nicht erzeugt wurden.

Antwort

0

Eine Möglichkeit, die richtigen Fehler zu bekommen ist gradle in einem Terminal mit ‚--info‘ laufen, wie:

gradle :app:build --info 

, die nicht genau in AS integriert ist, so kann ich nicht wirklich die Antwort akzeptieren .

3

Es gibt keinen einfachen Weg für jetzt. Wenn Sie mit solchen Kompilierungsfehlern konfrontiert werden und Fehlermeldungen auf fehlende Datenbindungsklassen verweisen, handelt es sich in der Regel entweder um einen schlechten Verweis vom Layout (d. H. Sie versuchen, auf Memberklassen zuzugreifen, die Sie nicht belichten - normalerweise passiert das bei & p Layouts).

Noch schlimmer, wenn Sie andere Code-generierende Bibliotheken (Icepick, Butterknife, etc) verwenden, dann kann der wahre Schuldige oft in Code völlig unabhängig von der Bindung sein. Wenn so etwas in meinem Code auftritt, überprüfe ich normalerweise Gradle Console Ansicht und lese es von Anfang bis zum Ende, ignoriert alle Fehlermeldungen im Zusammenhang mit Datenbindung wie "fehlende Klasse" oder "Paket existiert nicht"