2013-06-11 88 views
0

我一直在用Java編寫簡單的程序,但似乎遇到類路徑參與的問題。Java,基本類路徑問題

我編譯的類文件存在於目錄:/home/pi/code/java/eclipse/bin/

在此目錄中,我可以運行「的Java控制器」,程序會運行。

與類路徑進行實驗我嘗試了以下內容:"java -cp /home/pi/code/java/ eclipse.bin.Controller"

,但我得到以下異常:

"Exception in thread "main" java.lang.NoClassDefFoundError: eclipse/bin/Controller (wrong name: Controller) 
" 

最奇怪的是Java甚至建造的最後一節"eclipse.bin.Controller",例如當我輸入命令時,我可以選中它,所以我預計這會起作用。

我的最終目標是將類路徑指向JDBC驅動程序。

我哪裏錯了?

+1

解釋[這裏](http://stackoverflow.com/questions/15131498/combining-jar-file-with-classpath-java)可能會幫助你,我想。 – A4L

回答

1
java -cp /home/pi/code/java/eclipse/bin Controller 

如果您的Controller類在默認包中,將是正確的方法。

如果試圖引用類爲eclipse.bin.Controller Java運行時會尋找Controller類的包eclipse.bin和包內沒有目錄。

+0

我明白了,我需要了解包裝,感謝您的幫助。 – Xerphiel

+1

Xerphiel,包和類路徑很難到達底部,並且你會遇到一些處理它們的挫敗感。然而,他們需要Java程序員的知識。如果你知道C/C++,它們就是Java的鏈接器配置,儘管在我看來這並不令人沮喪。 –

+0

感謝您的信息,我已經看了一些教程,但沒有什麼是大量的意義(雖然它遲了)。任何好的教程將不勝感激! – Xerphiel