4

就在今天,我注意到我可以在 eclipse 中毫无问题地运行 java,但是当我尝试在命令提示符下运行它时,我得到“找不到或加载主类”。命令提示符实际上可以编译,它输出一个.class文件,但是在尝试执行时显示错误消息。(另外,几周前我能够在 cmd 中运行 java。)

/* work area for practice
 * 
*/


package Scrap;



public class experimentational {

public static void main (String [] args) {
    System.out.println("welcome to java!");



}

}
4

6 回答 6

2

找到了答案:(我使用不同的代码,但它仍然与这个问题有关)

java -cp . hiThere


output: "Hi there"

我知道这是类路径,但不知道它为什么起作用或周期对它有什么作用。有人有想法吗?

于 2013-04-08T18:28:07.710 回答
1

您是否在 Eclipse 之外的机器上安装了 JDK?如果您这样做了,请确保您正确设置了路径变量。打开命令提示符(假设是 windows)并输入 java -version

如果 JDK 安装正确并且路径变量设置正确,它应该会告诉您安装的 Java 版本。如果它告诉您“java”未被识别为您未安装 JDK 或未正确安装的命令。

您的程序在 Eclipse 中运行的原因是 Eclipse for Java 有自己的内部 JDK 和 JVM。

您的另一个选择是将路径变量设置为指向 Eclispe 的内部 JDK。

如果您之前能够从命令提示符运行它,那么很可能您的类路径已更改。这是一台在工作的机器吗?一些公司的 SMS 任务会定期执行并将默认系统设置(包括路径变量)恢复为公司默认值。

于 2013-04-08T15:04:09.997 回答
1

试试java -cp . [your main class]

于 2013-04-08T14:28:33.040 回答
1

利用:

javac Scrap/experimentational.java

其次是:

java Scrap.experimentational
于 2013-04-08T14:32:33.980 回答
0

也许 java 和 javac 不在您的操作系统路径中。如果您在 cmd 中使用 Microsoft Windows,请键入路径,然后输入。如果 jdk 或 jre 不在路径中,则需要将它们放入其中

于 2013-04-08T14:33:02.513 回答
-2

当我将粘贴的代码复制到编辑器中时,我遇到了类似的问题。我删除了第 1 行的包声明,然后它运行了。因此,在首先尝试删除包行之后,我会调查上述关于包的评论。

于 2017-03-27T18:55:17.727 回答