Intellij Idea: Gradle не включает зависимости в classpath jar - PullRequest
0 голосов
/ 27 января 2020

Вот build.gradle:

plugins {
    id 'java'
}

group 'com.vladdrummer'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
    flatDir {
        dirs 'src/main/libs'
    }
}
sourceSets {
    main.java.srcDirs += 'src/main/java/'
}

jar {
    manifest {
        attributes 'Main-Class': 'PrayerBackend'
    }
}

dependencies {
    implementation name: 'mysql-connector-java-8.0.11'
    implementation "com.sparkjava:spark-core:2.8.0"
    implementation 'com.google.code.gson:gson:2.8.2'
    implementation group: 'mysql', name: 'mysql-connector-java', version: '5.1.21'
    testCompile group: 'junit', name: 'junit', version: '4.12'
}

Теперь, когда я запускаю его из Intellij Idea - он работает нормально, но когда я нажимаю "build" в меню Gradle и запускаю java -jar backend. jar - у меня ошибка:

Exception in thread "main" java.lang.BootstrapMethodError: java.lang.NoClassDefFoundError: spark/Request
        at Server.<init>(Server.java:34)
        at PrayerBackend.main(PrayerBackend.java:3)
Caused by: java.lang.NoClassDefFoundError: spark/Request
        ... 2 more
Caused by: java.lang.ClassNotFoundException: spark.Request
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

Я вижу, что она не включала Spark в classpath, но для меня файл gradle - это хорошо. Где проблема?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...