2011-06-29 95 views
1

我覺得這應該更容易,或者我失去了明顯的東西。碼頭與自定義JUL記錄器

我想用Jetty使用我們的自定義JUL日誌庫。無論在哪裏放置自定義記錄器的JAR文件,都不會找到它。我曾嘗試過通常的嫌疑人;/lib /,/ lib/ext /,/ WEB-INF/lib /甚至手動將其添加到類路徑中。

2011-06-29 15:27:34.518::INFO: Started [email protected]:8080 
Can't load log handler "net.aw20.logshot.client.LogShotHandler" 
    java.lang.ClassNotFoundException: net.aw20.logshot.client.LogShotHandler 
    java.lang.ClassNotFoundException: net.aw20.logshot.client.LogShotHandler 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217) 

我使用「-jar start.jar」技術啓動Jetty。到處尋找,我發現了一些討論這個問題的線索,但沒有解決。或者如果有的話,他們沒有回答他們的解決方案。

任何人都可以在這方面幫助嗎?

感謝

+0

如果你提取jar文件中的類文件並將它們放在WEB-INF/classes文件夾中,它會工作嗎? – happymeal

+0

@happymeal:不,它不。 –

回答

0

如果你開始與「罐子」,正常類路徑,參數不使用任何更多的Java應用程序。你可以做的是將META-INF/MANIFEST.MF文件中的.jar文件列出。即我在我的JAR-文件下列操作之一:

Manifest-Version: 1.0 
Ant-Version: Apache Ant 1.7.1 
Created-By: 20.6-b01 (Sun Microsystems Inc.) 
Built-By: user1 
Bundle-Vendor: myCompany 
Bundle-Version: 1.0.0.1 
Implementation-Version: 1.0.0.1 
Class-Path: commons.jar lib/hibernate3.jar 

和這樣的罐子可以作爲CLASSPATH的一部分。