#bazel
#bazel
Вопрос:
Я пытаюсь перенести огромный проект, содержащий проекты Visual Studio и maven, на bazel. Мне нужно получить доступ к нашему внутреннему серверу maven, который зашифрован. Чтобы получить доступ, мне нужно загрузить расширение maven_jar skylark, поскольку impl по умолчанию не поддерживает шифрование (ошибка 401). использование расширения приводит к множеству проблем, таких как:
ERROR: BUILD:4:1: no such package '@org_bouncycastle_bcpkix_jdk15on//jar': Traceback (most recent call last):
File ".../external/bazel_tools/tools/build_defs/repo/maven_rules.bzl", line 280
_maven_artifact_impl(ctx, "jar", _maven_jar_build_file_te...)
File ".../external/bazel_tools/tools/build_defs/repo/maven_rules.bzl", line 248, in _maven_artifact_impl
fail(("%s: Failed to create dirs in e...))
org_bouncycastle_bcpkix_jdk15on: Failed to create dirs in execution root.
Основная проблема, по-видимому, заключается в оболочке, которую необходимо предоставить bazel в переменных среды BAZEL_SH:
- Я работаю под Windows
- Я использую bazel 0.23.2
- похоже, что bazel запускает команду bash, используя «bash» напрямую, а не ту, которая предоставляется переменной env.
- У меня установлена оболочка Ubuntu в Windows. bazel использовал все из Ubuntu, особенно при использовании maven (settings.xml использовался из ubuntu ~ /.m2, а не от пользователя Windows)
- после удаления ubuntu и проверки того, что bash в cmd заканчивается «команда не найдена», я также удалил переменную BAZEL_SH env, и bazel выдает сообщение выше
- после повторной установки переменной BAZEL_SH происходит сбой с тем же сообщением об ошибке
Я предполагаю, что bazel откуда-то получает bash или игнорирует переменную env. Мои вопросы: 1. Как настроить правильную оболочку? 2. Нужен ли BAZEL_SH при использовании текущей версии?
Для меня документ на веб-сайте bazel о настройке устарел.
Приветствия
Ответ №1:
Пожалуйста, рассмотрите возможность использования rules_jvm_external
для управления вашими зависимостями Maven. Он поддерживает как Windows, так и частные репозитории, использующие базовую аутентификацию HTTP.
Для меня документ на веб-сайте bazel о настройке устарел.
Команда Bazel знает об этом и в ближайшее время обновит наши документы.