Я могу успешно использовать Gradle для компиляции толстого JAR, но у меня возникают проблемы с запуском JAR после недавнего переключения с спецификации зависимости "compile" на спецификацию "реализация / api".Я выделил, что проблема возникает только в одном из двух следующих случаев.Приложение работает в любом случае внутри IntelliJ.
первый / проблема:
dependencies {implementation 'no.tornado:tornadofx:1.7.18'}
второй / работы:
dependencies {compile'no.tornado:tornadofx:1.7.18'}
JAR компилируется в обоих случаях.Проблема появляется, когда я пытаюсь запустить JAR первого случая в командной строке, и он выдает следующую ошибку.
C: \ aaa_eric \ code \ testr \ mic \ build \ libs> java -jar mic-1.0-snapshot.jar Ошибка: не удалось найти или загрузить основной класс приложения. MyApp Причина: java.lang.NoClassDefFoundError: tornadofx / App
Вот задача JAR в build.gradle.Возможно ли, что зависимость tornadofx доступна во время компиляции, но не во время выполнения?Спасибо за любую помощь.
jar {
manifest {
attributes 'Main-Class': 'app.MyApp'
}
from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
}