使用'--incompatible_disable_native_android_rules'构建Android项目时出错

时间:2019-06-30 18:10:19

标签: android bazel

当我尝试使用--incompatible_disable_native_android_rules构建项目时,出现下一个错误:

ERROR: /home/user/.cache/bazel/_bazel_user/aee0be3e153556afb3ddc0b7aea89213
/external/androidsdk/BUILD.bazel:8:1: in tags attribute of android_sdk 
rule @androidsdk//:sdk-28: The native Android rules are deprecated. 
Please use the Starlark Android rules by adding the following load statement 
to the BUILD file: load("@build_bazel_rules_android//android:rules.bzl",
"android_sdk"). See http://github.com/bazelbuild/rules_android.. 
Since this rule was created by the macro 'create_android_sdk_rules', 
the error might have been caused by the macro implementation in
/home/user/.cache/bazel/_bazel_user/aee0be3e153556afb3ddc0b7aea89213/
external/androidsdk/BUILD.bazel:8:1

在安装Bazel 0.27之后,我使用

load("@rules_android//android:rules.bzl", android_sdk_repository_rule = "android_sdk_repository")
...
def my_sdk_rule(name = None, api_level = None, build_tools_version = None):    
    android_sdk_repository_rule(
        name = name,
        api_level = api_level,
        build_tools_version = build_tools_version,
    )

,如https://github.com/bazelbuild/bazel/issues/8391中所述。

有人遇到过这个问题吗?

1 个答案:

答案 0 :(得分:0)