我編寫了一個簡單的Hello World程序來測試JDK安裝。我可以用在Vim編譯:Vim:從vim命令運行java給出錯誤
:!javac Desktop\HelloWorld.java
這只是罰款,但是當我嘗試使用運行程序:
:!java Desktop\HelloWorld
它給了我這個錯誤:
C:\Windows\system32\cmd.exe /c java "Desktop\HelloWorld" Exception in thread "main" java.lang.NoClassDefFoundError: Desktop\HelloWorld (w rong name: HelloWorld) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) Could not find the main class: Desktop\HelloWorld. Program will exit.
程序通常的命令行工作得很好。
C:\Users\Casey\Desktop>java HelloWorld
Hello world!
我怎麼能執行從Vim的程序,而無需切換到標準CMD?
是不是!java -classpath Desktop.HelloWorld? 看起來像SO吃了你的期間 – GoingTharn 2009-07-27 22:30:17
HelloWorld是類,Desktop是它可以找到的路徑。此外,它似乎該類使用默認包(否則Java HelloWorld不會工作)。所以缺少這個點確實是正確的。 – Joey 2009-07-27 23:24:39