2011-12-23 67 views
0

可能重复:
package in .java file makes class file unuseable如何在命令行中运行Java应用程序时它在包中?

我Hellow世界运行正常。 但只要我添加了一个包参考我不能从命令行运行它:

package pv; 
public class hcw2 { 
    public static void main(String[] args) { 
     System.out.println("Hello Cruel World."); 
    } 
} 

编译罚款,那么我期待用java pv.hcw2来运行它,如:

>java pv.hcw2 
>Error: Could not find or load main class pv.hcw2 

我也试过只是java hcw2,无济于事。

运行在与运行的原始目录相同的目录中。在Windows 7 64b上运行。

谢谢

回答

1

你应该有一个名为PV的文件夹下,你的文件应该hcw2.java撒谎。该文件夹光盘只是你的包。然后在目录之外,您可以发出javac命令,如下所示,接着是java。

[email protected]:~$ javac pv/hcw2.java 

[email protected]:~$ ls pv 
hcw2.class hcw2.java 

[email protected]:~$ java pv.hcw2 
Hello Cruel World. 
0

您的java类需要位于名为pv的子目录中。所以:

的mkdir光伏

MV hcw2.java hcw2.class光伏

,那么你可以运行

的Java pv.hcw2

+0

完美,谢谢。我确定这很简单! : - ) – 2011-12-23 07:11:37

1

你有让你的班级保存在你的软件包中。所以:

package pv; 
    public class hcw2 { 
     public static void main(String[] args) { 
      System.out.println("Hello Cruel World."); 
     } 
    } 

的hcw2.java应保持像pv\hcw2.java 一旦你编译成功应该是在同一个文件夹中的类文件,如:

pv\hcw2.class 

在运行,你必须改变目录基础目录。所以如果你的目录结构,如:d:\java\pv\hcw2.java 然后 更改目录到d:\ java中>

Run the java command there with the package name. So : 
d:\java> java pv/hcw2 or 

d:\ java中>的Java test.Test

相关问题