其他分享
首页 > 其他分享> > android-数据绑定失败并显示“无法猜测”

android-数据绑定失败并显示“无法猜测”

作者:互联网

自从Android Studio 3.2.0更新以来,我面临以下问题:

Execution failed for task ‘:mobile:dataBindingGenBaseClassesDebug’.

> couldn’t make a guess for com.ACME.database.model.Order

还看到了answer,这提示“软件包名称必须以小写字母开头”.

…看起来很像,似乎是因为该变量赋值是原因:

<data class=".databinding.OrderFragmentBinding">
    <variable name="order" type="com.ACME.database.model.Order"/>
    ...
</data>

发现:New data binding compiler for binding classes,它不能解释行为的变化.

问:此类分配也受该命名约定影响吗?我的意思是,有什么机会(除了更改大写的包名之外)使数据绑定v2“猜测”生效?

解决方法:

gradle.properties中的以下设置确实启用了androidx数据绑定编译器:

android.databinding.enableV2 = false
android.enableExperimentalFeatureDatabinding = true

通过所获取的包可以看到:

Download https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-compiler/3.2.0/databinding-compiler-3.2.0.pom
Download https://dl.google.com/dl/android/maven2/androidx/databinding/databinding-compiler/3.2.0/databinding-compiler-3.2.0.jar

它抱怨:

WARNING: The option setting 'android.databinding.enableV2=false' is experimental and unsupported.
The current default is 'true'

WARNING: The option setting 'android.enableExperimentalFeatureDatabinding=true' is experimental and unsupported.
The current default is 'false'

为了将Fragment与默认的v2数据绑定编译器进行数据绑定,最有可能需要androidx.fragment.app.Fragment而不是android.support.v4.app.Fragment.这只是一个临时解决方案-但仍比还原到v1数据绑定编译器更好.

我最近注意到,在不向< data />标签.生成的名称始终首字母大写,其余全为小写.

标签:android,androidx,android-gradle,android-databinding,android-studio-3-2
来源: https://codeday.me/bug/20191009/1877607.html