Я строю очень простую банку одним основным методом.У меня работают правила Kotlin, и я могу собрать jar просто отлично:
kt_jvm_binary(
name = "myapp",
main_class = "MainKt",
srcs = ["src/main/kotlin/Main.kt"]
)
Однако этот аргумент main_class
ничего не добавляет в манифест, позволяющий мне запустить jar (Я предполагаю, что тот, что находится в папке bazel-bin, является правильным).
Я попытался использовать библиотеку, а затем скомпилировать ее с использованием правила java_binary
:
kt_jvm_library(
name = "myapp_lib",
srcs = ["src/main/kotlin/Main.kt"]
)
java_binary(
name = "myapp",
main_class = "MainKt",
visibility = ["//visibility:public"],
runtime_deps = [":myapp_lib"],
deploy_manifest_lines = ["Main-Class: MainKt"]
)
ТеперьУ меня есть две банки;myapp.jar, у которого только есть манифест, и myapp_lib.jar, у которого есть файл класса.Ни у одного из них нет основного класса в манифесте, независимо от того, включаю ли я этот аргумент deploy_manifest_lines
или нет.
Как мне построить очень простой флягу с основным классом, который позволяет мне его запускать?
(Обратите внимание, что я буду работать с рабочими столами и TornadoFX, , а не Android.)