Для следующего файла BUILD
java_library(
name='target_lib',
srcs=['target.java',],
)
java_binary(
name='target',
runtime_deps=[':target_lib',],
main_class='com.example.target',
)
Я могу выполнить базельный запуск //path:target для java_binary, и он успешно выполнит мое приложение; однако при попытке выполнить bazel run //path:target_deploy.jar происходит сбой с сообщением «невозможно выполнить двоичный файл».
Я пытаюсь это сделать на MacOS ( если это имеет значение)
Кроме того, если я попытаюсь вручную выполнить java -jar bazel-bin/path/target_deploy.jar, я обнаружу, что манифест не работает t указать main_class. Не уверен, связано ли это.
Информация о версии Bazel:
$ bazel version
Build label: 0.26.1-homebrew
Build target: bazel-out/darwin-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Thu Jun 6 18:36:29 2019 (1559846189)
Build timestamp: 1559846189
Build timestamp as int: 1559846189
Подробнее здесь: https://stackoverflow.com/questions/565 ... inary-file