如何使用AndroidX DataBinding运行Bazel Android项目

问题描述

我正在尝试使用AndroidX数据绑定运行Bazel Android项目。

我尝试过this解决方案,但仅适用于<div id="square"></div>版本的数据绑定

这是我的Bazel目标:

support

我正在构建项目following way ...

load("@rules_jvm_external//:defs.bzl","artifact")

package(default_visibility = ["//visibility:public"])

android_binary(
    name = "app",enable_data_binding = 1,srcs = glob(["*.java"]),resource_files = glob(["res/**"]),manifest = "AndroidManifest.xml",deps = [
      artifact("androidx.databinding:databinding-common:4.0.1"),artifact("androidx.databinding:databinding-adapters:4.0.1"),artifact("androidx.databinding:databinding-runtime:4.0.1"),],)

...并具有以下输出

~/bazel/bazel-bin/src/bazel build //srs/app --strategy=Desugar=sandBoxed --android_databinding_use_v3_4_args --experimental_android_databinding_v2 --override_repository=android_tools=/tmp/android_tools

布局名称/com/morfly/bazel/databinding/ScreenBinding.java:3: error: cannot find symbol import android.databinding.DataBindingUtil; ^ symbol: class DataBindingUtil location: package android.databinding /com/morfly/bazel/databinding/ScreenBinding.java:4: error: cannot find symbol import android.databinding.ViewDataBinding; ^ symbol: class ViewDataBinding location: package android.databinding /com/morfly/bazel/databinding/ScreenBinding.java:13: error: cannot find symbol public abstract class ScreenBinding extends ViewDataBinding { ^ symbol: class ViewDataBinding bazel-out/android-armeabi-v7a-fastbuild/bin/src/app/java/com/morfly/bazel/_javac/main_screen/libmain_screen_sourcegenfiles/com/morfly/bazel/databinding/ScreenBindingImpl.java:11: error: IncludedLayouts has protected access in ViewDataBinding private static final androidx.databinding.ViewDataBinding.IncludedLayouts sIncludes; ^ bazel-out/android-armeabi-v7a-fastbuild/bin/src/app/java/com/morfly/bazel/databinding/main_screen/DataBindingInfo.java:11: error: cannot find symbol buildId="not_used_here" // Adds incrementality,which Bazel already supports ^ symbol: method buildId() location: @interface BindingBuildInfo Target //src/app:app Failed to build Use --verbose_failures to see the command lines of Failed build steps. INFO: Elapsed time: 52.067s,Critical Path: 22.32s INFO: 75 processes: 16 internal,53 darwin-sandBox,6 worker. Failed: Build did NOT complete successfully

是否可以使用AndroidX数据绑定构建Bazel项目?

我将不胜感激!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)