简书链接:databind常见手误导致错误以及解决方法
文章字数:127,阅读全文大约需要1分钟

1
2
3
4
5
6
7
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'.
> android.databinding.tool.util.LoggedErrorException: Found data binding errors.
****/ data binding error ****msg:Identifiers must have user defined types from the XML file. VISIBLE is missing it
file:D:\newdev\myproject\app\src\main\res_yongster\layout\young_view_recommend_flower_item.xml

错误原因,手误,加 app:visibility="@{check?View.VISIBLE:View.GONE}" /> 写成了 app:visibility="@{check?@View.VISIBLE:View.GONE}" />

1
2
3
4
loc:70:46 - 70:52
****\ data binding error ****
****/ data binding error ****msg:Syntax error: missing ')' at '/'
file:D:\newdev\myproject\app\src\main\res_yongster\layout\young_flower_buy_dialog.xml

不小心插入了特殊符号变量

1
2
3
4
5
6
loc:109:38 - 109:56
****\ data binding error ****
****/ data binding error ****msg:Cannot find the setter for attribute 'app:formatText' with parameter type java.lang.String on android.widget.TextView.
file:D:\newdev\myproject\app\src\main\res_buliao\layout\dialog_view_suggest_recharge.xml
loc:87:38 - 87:58
****\ data binding error ****

传递的是字符串我给弄了一个int了 @BindingAdapter({“pinknumber”, “formatText”})

1
2
3

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

我的习惯就是写完整个工程,然后跑起来,但是显然databind这么搞会死人的。