我有以下問題:我做了一個Java應用程序,它在Netbeans運行時完全正常工作,但在構建後無法工作。該庫已經適當地包括,這裏是試圖從命令行運行它之後會發生什麼:Netbeans 7.2.1構建問題
Exception in thread "Thread-4" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
at com.xuggle.ferry.JNIMemoryManager.<init>(JNIMemoryManager.java:861)
at com.xuggle.ferry.JNIMemoryManager.<clinit>(JNIMemoryManager.java:860)
at com.xuggle.mediatool.MediaWriter.<clinit>(MediaWriter.java:119)
at com.xuggle.mediatool.ToolFactory.makeWriter(ToolFactory.java:149)
at app.RepaintImpl$1.run(RepaintImpl.java:63)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 6 more
在NB一切都被設置爲JDK 7,我相信我的環境變量也沒關係:
CLASSPATH=C:\Program Files\Java\jre7\lib\*;C:\Program Files\Java\jre7\bin\*;
JAVA_HOME=C:\Program Files\Java\jdk1.7.0_09
PATH=C:\Program Files\Java\jdk1.7.0_09\bin;...
這裏的生成日誌,讓我困擾的是,在Netbeans的.jar文件創建空目錄的事實:
ant -f "C:\\Users\\Wojtek\\Documents\\NetBeansProjects\\VNC Streamer" clean jar
init:
deps-clean:
Updating property file: C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build\built-clean.properties
Deleting directory C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build
clean:
init:
deps-jar:
Created dir: C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build
Updating property file: C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build\built-jar.properties
Created dir: C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build\classes
Created dir: C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build\empty
Created dir: C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build\generated-sources\ap-source-output
Compiling 87 source files to C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build\classes
Note: C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\src\app\RepaintImpl.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Copying 1 file to C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build\classes
Copied 25 empty directories to 24 empty directories under C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build\classes
compile:
Created dir: C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\dist
Copying 1 file to C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\build
Copy libraries to C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\dist\lib.
Building jar: C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\dist\VNC_Streamer.jar
To run this application from the command line without Ant, try:
java -jar "C:\Users\Wojtek\Documents\NetBeansProjects\VNC Streamer\dist\VNC_Streamer.jar"
jar:
BUILD SUCCESSFUL (total time: 7 seconds)
任何幫助將不勝感激!
你運行'java -jar「C:\ Users \ Wojtek \ Documents \ NetBeansProjects \ VNC Streamer \ dist \ VNC_Streamer.jar」'?這似乎是一個圖書館失蹤。你可能只在運行選項卡中添加一個庫(在項目屬性中),但不是編譯選項卡? – assylias
是的,這些錯誤來自命令行後執行該文件。此外,我檢查了屬性,一切似乎都已到位。 – user1937873
我會首先刪除'CLASSPATH'變量,因爲這是一個古老的做法,它可能會導致其他設置的問題。 – madth3