Ich habe versucht, dies für drei Tage in meinem Projekt arbeiten und ein einfaches Projekt zu testen. Ich habe hier sehr ähnliche Themen durchsucht, aber nichts gefunden, was mir geholfen hat, den Fehler, den ich erhalte, zu lösen. Ich bin sogar so weit gegangen, meinen Fedora 25 neu zu formatieren, wie es auf einem Windows 10 funktioniert, aber immer noch nichts. Ich habe auch in beiden Einstellungen und anderen Einstellungen in Intellij-2016.3.4 Annotation-Verarbeitung aktiviert, die nach anderen Antworten sollte es behoben haben, aber es ändert nichts. Bitte jede hilfe wird geschätzt !!!Gradle Exception im Thread "Haupt" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at com.sammy.CheckLog.(CheckLog.java:8) Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:123)sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 1 more
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class CheckLog {
public static void main(String... args){
log.info("I'm Here!! ");
}
}
Unten ist meine build.gradle Datei mit lombok zusammen mit den zugehörigen slf4j Abhängigkeiten definiert.
/*
* This build file was generated by the Gradle 'init' task.
*
* This generated file contains a commented-out sample Java project to get you started.
* For more details take a look at the Java Quickstart chapter in the Gradle
* user guide available at https://docs.gradle.org/3.4/userguide/tutorial_java_projects.html
*/
// Apply the java plugin to add support for Java
apply plugin: 'java'
apply plugin: 'application'
mainClassName = 'com.sammy.CheckLog'
// In this section you declare where to find the dependencies of your project
repositories {
// Use 'jcenter' for resolving your dependencies.
// You can declare any Maven/Ivy/file repository here.
jcenter()
}
// In this section you declare the dependencies for your production and test code
dependencies {
// The production code uses the SLF4J logging API at compile time
compileOnly 'org.slf4j:slf4j-api:1.7.24'
compileOnly 'org.slf4j:slf4j-simple:1.7.24'
compileOnly 'org.projectlombok:lombok:1.16.14'
// Declare the dependency for your favourite test framework you want to use in your tests.
// TestNG is also supported by the Gradle Test task. Just change the
// testCompile dependency to testCompile 'org.testng:testng:6.8.1' and add
// 'test.useTestNG()' to your build script.
testCompile 'junit:junit:4.12'
}
UPDATE: Nach dem Wechsel zu „übersetzen“, läuft dies auf der Kommandozeile von IntelliJ nicht, wie es seine eigene Laufzeit zu verwenden, scheint es zu interpretieren, während gradle die verwendet man I definiert haben. jdk1.8.0_121
Danke! Ich kann es auf der Kommandozeile ausführen, damit es jetzt funktioniert. Aber wenn ich es mit Intellij starte, gibt es immer noch die gleiche Fehlermeldung, und weil ich in Intellij eine Datenbank-App für End-to-End-Tests habe, brauche ich sie auch dort. – Sammy65
Versuchen Sie, das Projekt in IntelliJ erneut zu importieren. – Boschi
es schlägt immer noch fehl :-( – Sammy65