0

我是 Java 的初学者,我创建了这个类:

class test
{
    public static void main(String[] args)
    {
        System.out.println("Hello World!");
    }
}

作为 test.java,当我用这个 cmd 编译它时:

javac C:\Users\Aimad\Desktop\test.java

接着:

java C:\Users\Aimad\Desktop\test.class

我收到了这个错误:

无法找到或加载主类 C:\Users\Aimad\Desktop\test.class

4

6 回答 6

2

你所写的问题是你添加了“.class”。通过编写此代码,您已指示 Java.exe 在您当前所在目录下名为“test”的目录中查找名为“class”的类文件。为了使您的代码正常工作,请删除“.class”扩展名,您需要首先在命令行中导航到文件。此外,包含您的 main 方法的类必须声明为“public”。

代码

public class test
{
    public static void main(String[] args)
    {
        System.out.println("Hello World!");
    }
}

命令行

cd C:\Users\Aimad\Desktop
java test
于 2012-10-16T14:41:08.050 回答
1

The solution is either:

% cd C:\Users\Aimad\Desktop
% java test

or

% java -cp C:\Users\Aimad\Desktop test

Explanation:

  1. The argument to the java command must be the fully qualified name of the class. In your case, since your class is declared in the "default" package, the FQN is "test".

  2. The java command needs to be able the class (i.e. the "test.class" file) via its classpath. The default java classpath is . so the first solution is to change to the directory containing the "test.class" file and so that it can be accessed as ".\test.class". The second solution uses the -cp argument to specify a non-default classpath.

Note that using a pathname to identify the class won't work, either with the ".class" suffix, or with the ".class" suffix removed ... (except as above)

于 2012-10-16T14:47:52.520 回答
1

试试看::

java C:\Users\Aimad\Desktop\test
于 2012-10-16T14:21:04.657 回答
0

转到 .class 文件所在的目录并键入命令以运行程序。

于 2012-10-16T14:29:15.653 回答
0

因为execution,你不需要写java C:\Users\Aimad\Desktop\test.classclass文件是机器可读的,所以我们不需要调用它们。

只需添加public class name唯一的,例如java C:\Users\Aimad\Desktop\test

在这里阅读

于 2012-10-16T14:29:24.297 回答
0

$cd C:\Users\Aimad\Desktop $java -cp 。测试

并将课程公开

运行程序时无需指定 .class 和路径,它应该是完全限定的类名:)

于 2012-10-16T14:28:02.777 回答