CDH SPARK java.lang.NoClassDefFoundError: org / slf4j / Logger
Cdh Spark Java Lang
Introduïu el directori bin sota el camí de la guspira i executeu ./spark-shell
error:
./spark-shell Error: A JNI error has occurred, please check your installation and try again Exception in thread 'main' java.lang.NoClassDefFoundError: org/slf4j/Logger at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.privateGetMethodRecursive(Class.java:3048) at java.lang.Class.getMethod0(Class.java:3018) at java.lang.Class.getMethod(Class.java:1784) at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) Caused by: java.lang.ClassNotFoundException: org.slf4j.Logger at java.net.URLClassLoader.findClass(URLClassLoader.java:382) 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) ... 7 more
Motiu: manca de paquets slf4j i log4j al directori jars a spark (/ data / cloudera / parcels / SPARK2 / lib / spark2 / jars)
Solució: afegiu el paquet de pots a aquest camí
El meu slf4j-log4j12 és 1.7.21. També podeu fer referència a la meva o activada https://mvnrepository.com/ Cerqueu la vostra pròpia versió del paquet jar
1. Cerqueu slf4j per trobar la versió de Binding, feu clic per trobar la versió corresponent i descarregueu el paquet jar
2. Tireu cap avall per trobar les versions log4j i slf4j-api corresponents, i les següents actualitzacions són la versió més recent. Podeu deixar-ho en pau
A continuació, descarregueu dos pots
3. El problema es resol carregant els tres pots al directori de pots de spark