2012-07-09 60 views
0

由於我在Java中頗爲新穎,所以我有一個問題。正如在標題中所講的那樣,我在VirtualBox上運行Ubuntu服務器,並且使用包運行一個非常簡單的類時出現問題。在Ubuntu中使用Virtual Box運行Java類

我給你的代碼:

package world; 

public class HelloWorld{ 

public static void main (String[] args){ 

System.out.println("Hello World") 
} 
} 

非常簡單的代碼確實如此。與javac HelloWorld.java編譯它,有沒有失誤(確定現在什麼錯誤可能地找到),

  • 運行java HelloWorld,給我的消息的NoClassDefFoundError
  • 運行java world.HelloWorld回報無法找到或加載主類之後。

我懷疑它與classpath有關,但我找不到答案。

+0

你正在運行什麼樣的服務器? Ubuntu是一個操作系統而不是服務器。 – 2012-07-09 08:28:58

回答

1

這是一個類路徑問題。您可以通過查看CLASSPATH環境變量來查看您的類路徑。你可以嘗試添加你的類文件所在的目錄到這個CLASSPATH的最後,但最簡單的做法可能是以下幾點。

確保HelloWorld.java文件是在一個名爲world目錄,你可以編譯就像是:

javac world/HelloWorld.java 

這將創建一個HelloWorld.class文件在世界上的目錄。那麼你可以嘗試從同一個地方運行

java world.HelloWorld 

java -classpath . world.HelloWorld 

您還可以使用帶有javac的-d標誌將類文件放在不同的位置,而不是源(.java文件)所在的位置。

相關問題