2014-09-06 70 views
1

代码:运行.class文件用的java.exe - 错误:无法找到或加载主类

package pack1; 

public class Demo01 { 

public void run() { 
    System.out.println("--running Demo01--"); 
    demoMethod1(); 
} 

private void demoMethod1() { 
    int foo = 5; 
    int bar = 10; 

    int res = foo+bar; 
    System.out.println("res: "+res); 
} 

public static void main(String[] args){ 
    Demo01 demo01 = new Demo01(); 
    demo01.run(); 
    // new change... 

    Demo02 demo02 = new Demo02(); 
    demo02.run(); 
    } 
} 

其余的可以在这里找到:https://code.google.com/p/ci-research-teamcity-test-project/source/browse/#svn%2Ftrunk%2Fsrc%2Fpack1

我试图运行的.class文件与java.exe通过命令行无济于事。 是的,我找过解决方案,试着用-cp标志运行根文件夹,但我一直得到相同的错误。在Eclipse中工作得很好。

+0

你最近如何运行它? – MrTux 2014-09-06 17:03:43

+0

通过用cmd.exe输入\ workspace \ ci-research-teamcity-test-project \ bin \ pack1 \并运行“java Demo01” – 2014-09-06 17:06:17

回答

2

好的,在这一点上我们有几点需要注意。

该课程在一个包中。因此,它必须与文件夹名称(您的案例中的“pack1”)完全一致。

你的文件夹结构必须是这样的:

"root folder" (X) 
| pack1 
    | Demo01.class 
    | Demo02.class (as I just noticed that you are also referring to it in the code) 

然后,为了启动它,你必须在父文件夹(这必须是当前工作目录;用X)的“PACK1”并执行

java pack.Demo01 

注意,你必须在最后使用整个规范类名引用它,没有的.class。

如果您不想或不能将当前工作目录更改为“根文件夹”,则可以使用-cp PATH作为java.exe的第一个参数。

相关问题