2014-09-28 17 views
1

我似乎有執行Java類的問題;java找不到或加載主類,使用-cp。 package.class

我有一個靜態的方法main(String[] args){};

類被稱爲Test,在包ptest

我的文件Test.class放置文件夾中C:\Test\

然後,我瀏覽到這個位置的命令提示符。

最後,在命令行中,我運行以下命令: 「java命令ptest.Test。」

這將返回:

Error: Could not find or load main class ptest.Test 

什麼我在這一點上缺少什麼?還有什麼可能導致這個錯誤?我做錯了什麼?

回答

2

創建一個新文件夾C:\Test\ptest,將Test.class移動到c:\Test\ptest\Test.classcd\Test,然後java -cp . ptest.Test

包結構對應於輸出目錄結構。

Managing Source and Class Files(Java教程),

把源代碼類,接口,枚舉,或註釋中,其名稱是類型的簡單名稱的文本文件類型和其擴展名是的.java。例如:

//in the Rectangle.java file 
package graphics; 
public class Rectangle { 
    ... 
} 

然後,把源文件目錄中的名稱反映到該類型屬於包的名稱:

..... \ \顯卡Rectangle.java

假定Microsoft Windows文件名分隔符反斜槓(對於UNIX,使用正斜槓),包成員的限定名稱和文件的路徑名是並行的。

class name – graphics.Rectangle 
pathname to file – graphics\Rectangle.java 
+0

這工作,我創建的包文件夾,並把我的類文件存在。然後我返回到根文件夾並執行'java -cp。 'C:\ Test'中的ptest.Test'。謝謝! (將盡快接受!) – Werner 2014-09-28 17:43:32

1

包映射到文件系統中的文件夾。

因此,ptest.Test映射到ptest/Test.class您的類路徑中的任何位置。

相關問題