`java_binary`s удаленной сборки не может работать локально - PullRequest
0 голосов
/ 12 октября 2019

Я использую Bazel 0.29.1 с удаленным выполнением для создания java_binary целей. Это простые цели с несколькими источниками и недостатками, например

java_binary(
    name = "foo",
    main_class = "my.foo",
    runtime_deps = [
        "//my/foo",
        "//third_party/jvm/org/apache/logging/log4j:log4j_core",
    ],
)

Конфигурация удаленного выполнения использует rbe_autoconfig из цепочек инструментов Bazel 0.29.8 и контейнер сборки по умолчанию.

Двоичный файлстроит нормально с bazel --config=remote build //:foo. Однако происходит сбой при запуске с bazel --config=remote run //:foo:

/home/kgessner/.cache/bazel/_bazel_kgessner/[snip]/foo: line 359: /usr/lib/jvm/java-8-openjdk-amd64/bin/java: No such file or directory

Оболочка / модуль запуска java_binary имеет неверный путь Java: /usr/lib/jvm/java-8-openjdk-amd64/bin/java - это путь к Java в контейнере сборки, но не локально.

Я не могу найти правильную комбинацию java-флагов, чтобы сделать эту работу: строить удаленно, но использовать локальную JRE при запуске. В чем прикол?

1 Ответ

0 голосов
/ 14 октября 2019

Звучит как ошибка. Не могли бы вы подать его на GitHub ?

...