Pracuji s webovým ovladačem selenu. Tolikrát jsem se pokusil spustit svůj skript. Znovu a znovu se zobrazuje chyba. Co udělám, abych vyřešil? Jaké je řešení? Používám Eclipse neon a jdk verze 8. Hlavní metoda funguje dobře, ale stránka @test mi dává chybu jni .. Chyba je:
Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.NoClassDefFoundError: com/beust/jcommander/ParameterException 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: com.beust.jcommander.ParameterException at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 7 more
Komentáře
- Přidáním souborů jcommander-1.48.jar & bsh-2.0b4.jar do projektu proveďte testovací běh
Odpověď
Rozumět – příčina, proč k tomu dojde
-
Kterýkoli z váš soubor je přítomen v době kompilace, ale není dostupný v době spuštění
-
Musíte překontrolovat jak čas kompilace, tak běh prostředí & cesty ke třídě
Komentáře
- děkuji. Dostal jsem chybu .. Přidal jsem 2 soubory jar (jcommander, jar & bsh-1.3.0.jar). Můj program nyní běží správně.
- Děkuji za odpověď, což mi pomohlo vyřešit můj. Mají podobnou situaci, perforce nedostaly všechny sklenice pro projekt, po opětovném mapování projektu a importu se všechny sklenice objevily a chyba byla pryč. Chcete-li zjistit, zda tomu tak je, stačí zkontrolovat " Knihovny " v " Cesta sestavení Java " (Project – > předvolby).