簡體   English   中英

Java:使用Jodd Jerry - NoClassDefFoundError

[英]Java: using Jodd Jerry - NoClassDefFoundError

我想在java中使用Jodd庫,因為我想嘗試Jerry 為此,我已經包含了這個問題的答案中顯示的庫,並使用了以下代碼:

File file = new File(SystemUtil.getTempDir(), "test.html");
NetUtil.downloadFile("http://de.wikipedia.org/wiki/Toastbrot", file);
Jerry doc = Jerry.jerry(FileUtil.readString(file));

執行此代碼會產生以下錯誤消息:

  Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory at jodd.lagarto.LagartoParserEngine.<clinit>(LagartoParserEngine.java:22) at jodd.jerry.Jerry$JerryParser.createLagartoDOMBuilder(Jerry.java:80) at jodd.jerry.Jerry$JerryParser.<init>(Jerry.java:73) at jodd.jerry.Jerry.jerry(Jerry.java:121) at jodd.jerry.Jerry.jerry(Jerry.java:53) at sla.htmlf.Main.test(Main.java:36) at sla.htmlf.Main.main(Main.java:19) Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory at java.net.URLClassLoader$1.run(URLClassLoader.java:217) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:334) ... 7 more 

at sla.htmlf.Main.test(Main.java:36)sla.htmlf.Main.main(Main.java:19)當然是指我項目的類

這是我第一次遇到NoClassDefFound異常。 似乎缺少org.slf4j.LoggerFactory,但如果我沒有弄錯,那就是jodd庫使用的東西 - 然后應該包含在那里,對吧?

我真的很感激一些建議/幫助

看起來你錯過了其他一個庫引用的slf4j庫。

slf4j-api-1.7.2.jar添加到您的類路徑中。

下載: http//www.slf4j.org/dist/slf4j-1.7.2.zip

正如您在下載頁面上看到的那樣, jodd-lagarto模塊( Jerry所屬)依賴於SLF4J日志庫。

請閱讀有關登錄Jodd的更多信息。 在此頁面上,您還可以找到一些快速設置環境並使其正常工作的步驟。

這些步驟是:

使用SLF4J,您可以選擇要使用的日志框架:none,log4j,commons等; Jodd的作者建議使用logback

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM