Jar файл проекта не содержит зависимости(не запускается без среды разработки)
Привожу в порядок старый Open Source проект. Решил со сборки Ant перевести на Gradle. Некоторые библиотеки подтянул из mvnCentral, некоторые сам написал и загрузил на GitHub, через JitPuck подтягиваю в проект.
Проблема состоит в том, что при запуске из jar файла, через linux-терминал, он выводит ошибку:
Error: Unable to initialize main class org.opensourcephysics.cabrillo.tracker.Tracker
Caused by: java.lang.NoClassDefFoundError: org/opensourcephysics/display/OSPFrame
Сам проект с классом org/opensourcephysics/display/OSPFrame подтягиваются через зависимости JitPack. Понять не могу в чем проблема, так как через среду разработки собирается и запускается без проблем. Разархивировал сам jar, а там только файлы и классы проекта Tracker(непосредственно, мой проект).
Gradle:
plugins {
id 'java'
}
jar {
manifest {
// This is where the Main class is specified for launching applications (otherwise the jar will not start)
attributes 'Main-Class': 'org.opensourcephysics.cabrillo.tracker.Tracker'
}
}
group 'org.osptracker'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
// Added JitPack for working with dependencies via GitHub
maven { url 'https://jitpack.io' }
}
dependencies {
compile group: 'com.nativelibs4java', name: 'bridj', version: '0.7.0'
implementation 'com.github.OpenSource-Physics-Tracker:AppleJavaExstensions:70fb48e5fe'
implementation 'com.github.OpenSource-Physics-Tracker:OpenSourcePhysics:0770a07'
implementation 'com.github.OpenSource-Physics-Tracker:FFMpeg:ef6949741c'
compileOnly 'org.projectlombok:lombok:1.18.8'
annotationProcessor 'org.projectlombok:lombok:1.18.8'
}
Как видно, среда разработки подтягивает данную библиотеку через зависимости:
Ответы (1 шт):
то что jar проекта содержит только файлы проекта - это норм. если нужно создать запускаемый jar со всеми зависимостями, т.н. fat-jar, то это уже описано к примеру здесь
