就在今天,我注意到我可以在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!");
}
}
答案 0 :(得分:2)
找到答案:(我使用不同的代码,但它仍与此问题相关)
java -cp . hiThere
output: "Hi there"
我知道这是classpath,但不知道它为什么会起作用或者它的周期是什么。有人有想法吗?
答案 1 :(得分:1)
尝试java -cp . [your main class]
。
答案 2 :(得分:0)
使用:
javac Scrap/experimentational.java
接下来是:
java Scrap.experimentational
答案 3 :(得分:0)
也许java和javac不在您的操作系统路径中。 如果您在cmd类型路径中使用Microsoft Windows,然后输入。 如果jdk或jre不在路径中,则需要将它们放入其中
答案 4 :(得分:0)
您是否在Eclipse之外的机器上安装了JDK?如果您这样做,请确保正确设置路径变量。打开命令提示符(假设是windows)并输入java -version
如果正确安装了JDK并且路径变量设置正确,它应该告诉您已安装的Java版本。如果它告诉您'java'未被识别为您没有安装JDK的命令,或者它未正确安装。
您的程序在Eclipse中运行的原因是Eclipse for Java有自己的内部JDK和JVM。
您的另一个选择是设置路径变量以指向Eclispe的内部JDK。
如果您之前能够从命令提示符运行它,那么很可能您的类路径已被更改。这是一台机器吗?有些公司会定期执行SMS任务,并将默认系统设置(包括路径变量)恢复为公司默认值。
答案 5 :(得分:-2)
当我将粘贴的代码复制到编辑器中时,我遇到了类似的问题。我删除了第1行的包声明然后运行了。因此,在首先尝试删除包装行之后,我会调查上面对包装的评论。