Невозможно построить bazel проект: такого пакета нет '@io_bazel_rules_kotlin // kotlin' - PullRequest
0 голосов
/ 01 мая 2020

ОС:

daz@daz:/rom/aosp-mirror/android-test$ uname -ar
Linux daz 5.4.0-28-generic #32-Ubuntu SMP Wed Apr 22 17:40:10 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Сборка с bazel-2.2.0 с целью в приведенном ниже коде:

daz@daz:/rom/aosp-mirror/android-test$ bazel-2.2.0 build :axt_m2repository

Я пытаюсь построить репозиторий android. здесь:

https://github.com/android/android-test

Определение этих правил выглядит следующим образом:

# Kotlin toolchains
rules_kotlin_version = "4c71740a1b63b785fc90afd8d4d4d5bfda527107"
http_archive(
    name = "io_bazel_rules_kotlin",
    sha256 = "c0ca7b66d9f466067635482592634703bf0a648d51ec958f41796d43ca8256b3",
    strip_prefix = "rules_kotlin-%s" % rules_kotlin_version,
    type = "zip",
    urls = ["https://github.com/bazelbuild/rules_kotlin/archive/%s.zip" % rules_kotlin_version],
)
load("@io_bazel_rules_kotlin//kotlin:kotlin.bzl", "kotlin_repositories", "kt_register_toolchains")
kotlin_repositories()
kt_register_toolchains()

Но при попытке получить следующее исключение построить:

ERROR: error loading package '': Encountered error while reading extension file 'kotlin/kotlin.bzl': no such package '@io_bazel_rules_kotlin//kotlin': error loading package 'external': Could not load //external package

Полный вывод здесь:

ERROR: /home/daz/.cache/bazel/_bazel_daz/ff62db25b941d7730a4c94ee1d6f2c41/external/robolectric/bazel/robolectric.bzl:2:5: Traceback (most recent call last):
        File "/rom/aosp-mirror/android-test/WORKSPACE", line 130
                robolectric_repositories()
        File "/home/daz/.cache/bazel/_bazel_daz/ff62db25b941d7730a4c94ee1d6f2c41/external/robolectric/bazel/robolectric.bzl", line 381, in robolectric_repositories
                android_all_jars()
        File "/home/daz/.cache/bazel/_bazel_daz/ff62db25b941d7730a4c94ee1d6f2c41/external/robolectric/bazel/robolectric.bzl", line 2, in android_all_jars
                native.maven_jar
no native function or rule 'maven_jar'
Available attributes: aar_import, action_listener, alias, android_binary, android_device, android_device_script_fixture, android_host_service_fixture, android_instrumentation_test, android_library, android_local_test, android_ndk_repository, android_sdk, android_sdk_repository, android_tools_defaults_jar, apple_binary, apple_cc_toolchain, apple_static_library, available_xcodes, bazel_version, bind, cc_binary, cc_host_toolchain_alias, cc_import, cc_libc_top_alias, cc_library, cc_proto_library, cc_test, cc_toolchain, cc_toolchain_alias, cc_toolchain_suite, config_feature_flag, config_setting, constraint_setting, constraint_value, environment, existing_rule, existing_rules, exports_files, extra_action, fdo_prefetch_hints, fdo_profile, filegroup, genquery, genrule, glob, j2objc_library, java_binary, java_import, java_library, java_lite_proto_library, java_package_configuration, java_plugin, java_proto_library, java_runtime, java_runtime_alias, java_test, java_toolchain, java_toolchain_alias, label_flag, label_setting, local_config_platform, local_repository, new_local_repository, ninja_build, ninja_graph, objc_import, objc_library, package_group, package_name, platform, proto_lang_toolchain, proto_library, py_binary, py_library, py_runtime, py_test, register_execution_platforms, register_toolchains, repository_name, sh_binary, sh_library, sh_test, test_suite, toolchain, toolchain_type, xcode_config, xcode_config_alias, xcode_version
ERROR: error loading package '': Encountered error while reading extension file 'kotlin/kotlin.bzl': no such package '@io_bazel_rules_kotlin//kotlin': error loading package 'external': Could not load //external package
INFO: Elapsed time: 0.061s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (0 packages loaded)

ВРЕМЕННОЕ РЕШЕНИЕ

Ветка сборки:

androidx-test-1.3.0-beta01

Использовать Базель-2.2.0

bazel-2.2.0 build :axt_m2repository

1 Ответ

0 голосов
/ 03 мая 2020

Убедитесь, что вы используете последнюю версию Bazel и репозиторий android-test.

Собственное правило maven_jar было удалено в Bazel 2.0 ( Билет отслеживания Bazel ) , Вы пробовали строить с версией Bazel <2.0 (например, <a href="https://github.com/bazelbuild/bazel/releases/tag/1.2.1" rel="nofollow noreferrer"> 1.2.1 )?

...