Использую Java + Gradle(встроенный в intellij idea) ('gradle' = 'sh gradlew')
В редакторе или при выполнении gradle run
все работает, но при попытке скомпилировать gradle build
и запустить java -jar ./build/libs/LinearServer-1.0-SNAPSHOT.jar
я получаю ошибку Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Logger
при вызове Logger.getLogger(Main.class);
Код файла build.gradle:
plugins {
id 'java'
id 'application'
}
group 'ru.screamt5.linear'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8
mainClassName = 'ru.screamt5.linear.LinearServer.Main'
repositories {
mavenCentral()
}
dependencies {
compile group: 'commons-cli', name: 'commons-cli', version: '1.4'
compile group: 'org.apache.commons', name: 'commons-io', version: '1.3.2'
compile group: 'com.google.inject', name: 'guice', version: '4.2.0'
compile group: 'log4j', name: 'log4j', version: '1.2.17'
testCompile group: 'junit', name: 'junit', version: '4.12'
}
jar {
manifest {
attributes(
'Main-Class': mainClassName,
'Class-Path': configurations.compile.collect { it.getName() }.join(' ')
)
}
}
В чем может быть проблема?
Надо добавить from в jar
jar {
manifest {
...
}
from {
configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Хочу создать мобильное приложение для Googel Play на подобие Pinterest но с видео вместо картинокВопрос: какой язык выбрать Java или JavaScript(JS т
Для одного проекта хочу создать папку service, и отдельно папку process, в service будут находиться классы сервисов post, get, и все запросы просто перенаправлять...
Создаю приложение на react nativeПри сборке приложения просит JAVA