2016-05-09 37 views
8

在Android Studio中2.1,從XML錯誤編譯時錯誤消息是完全不幫助:Android的數據綁定:如何獲得有用的錯誤信息

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

真正的錯誤通常會是這樣的「有沒有這樣的屬性android:adapter「,或者」變量foo不包含屬性欄「或類似的東西。但不是實際顯示這樣的錯誤,而是顯示上述無用的錯誤,它們只會告訴您由於某些未知錯誤而未生成綁定。

回答

0

得到適當的錯誤的一種方式是與「--info」終端的Gradle運行,如:

gradle :app:build --info 

這不完全集成到AS,所以我真的不能接受的答案。

3

現在沒有簡單的方法。一般來說,如果遇到這樣的編譯錯誤和錯誤信息指向缺少數據綁定類,它通常是從佈局錯誤的引用(即,您嘗試訪問您指定的成員類不會公開 - 通常在您佈局時發生)。

更糟的是,當您使用其他代碼生成庫(Icepick,Butterknife等)時,真正的罪魁禍首可能經常與代碼完全無關。所以當我的代碼出現這種情況時,我通常會檢查Gradle Console視圖並從頭開始讀取,忽略所有與數據綁定有關的錯誤消息,如「缺少類」或「包不存在」

相關問題