java编译成功,但是不能运行,怎么回事。

起初你或许会认为是一个莫名其妙的错误,因为代码根本一点问题的都没有,可运行期间总是报这个错,比较郁闷。出现Could not find the main class.program will exit和java.lang.UnsupportedClassVersionError 错误的原因,是因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的...
java编译成功,但是不能运行,怎么回事。
起初你或许会认为是一个莫名其妙的错误,因为代码根本一点问题的都没有,可运行期间总是报这个错,比较郁闷。
出现Could not find the main class.program will exit和java.lang.UnsupportedClassVersionError 错误的原因,是因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误。
因为,高版本的JDK生成的class文件使用的格式,可能与低版本的JDK的.class文件格式不同。这样,低版本的JVM无法解释执行这个.class文件,会抛出Could not find the main class.program will exit,java.lang.UnsupportedClassVersionError不支持的Class版本错误。
这个错误尤其在JDK5与JDK5之前的版本上表现明显。因为,JDK5在Java语法上作了不少增强,引入了一些新的.class文件的元素,导致旧版本的JVM无法解释、执行.class文件。即使这个类并没有使用任何JDK5的新元素,但是JDK5生成的.class文件,JDK1.4及其以前的JVM都无法辨认!

详细请参考:
http://blog.csdn.net/wangcheng8080/archive/2008/05/29/2492265.aspx2011-06-22
输入java [类名]
比如javac test.java遍以后会生成test.class
然后输入java test2011-06-22
你在CLASSTHPATH前面加一个
.;
即把原来的CLASSPATH=D:\java\lib\rt.jar改成
CLASSPATH=.;D:\java\lib\rt.jar
加.;的意思就是在当前目录里面寻找.class文件,你只要把目录转换到当前目录下,运行javac
及java就好了2019-09-22
mengvlog 阅读 9 次 更新于 2025-07-19 17:49:53 我来答关注问题0
  •  翡希信息咨询 java编译成功后无法运行,显示找不到或无法加载主类

    4. 编译错误: 原因:虽然你提到已经编译成功,但有时编译过程中可能隐藏了一些错误,或者编译后的.class文件损坏。 解决方案:重新编译你的Java文件,并检查是否有任何编译错误或警告。确保编译过程中没有错误输出。5. IDE或命令行配置问题: 原因:如果你在使用集成开发环境或命令行工具运行Java程序,配...

  •  翡希信息咨询 java程序编译通过但是运行时显示(错误:找不到或无法加载主类 helloworld ) 求高手解答!

    有时候,重新编译源代码可以解决一些看似莫名其妙的问题。使用javac HelloWorld.java重新编译你的源代码,然后再次尝试运行。总结: 确保类名大小写正确。 在正确的目录下运行Java命令。 如果使用了包,请使用完整的包名来运行类。 确保CLASSPATH设置正确。 不要在命令中包含.class扩展名。 尝试重新编译源代...

  •  翡希信息咨询 安装JDK7后,JAVA和java version都正常,但javac不能正常运行

    原因:尽管JAVA和java version命令能正常运行,但javac命令无法执行可能是因为CLASSPATH环境变量配置有误。CLASSPATH定义了Java运行时和编译器搜索类文件的路径,如果配置不当,可能会影响javac命令的正常运行。解决方案:检查并正确配置CLASSPATH环境变量。通常,不需要特别为JDK设置CLASSPATH,因为JDK的bin目录...

  • 其次,在cmd命令行中运行javac和java命令时,必须在Java源文件所在的目录下进行。这样编译生成的class文件也会存放在该目录下,当执行java命令时,程序会优先在本目录下寻找相应的class文件,从而避免找不到类的问题。值得注意的是,cmd的运行路径通常默认为C:\个人文件夹,而Java源文件往往保存在其他路径...

  •  翡希信息咨询 为什么我的JAVA程序可以生产class文件,可是在cmd中运行不出来结果

    你的JAVA程序在cmd中运行不出来结果,很可能是因为你的程序没有向控制台输出任何内容。具体原因和解决方法如下:缺少输出语句:在Java程序中,如果你没有使用System.out.println或其他类似的输出语句向控制台输出信息,那么在cmd中运行程序时,你将看不到任何输出结果。解决方法:在你的Java程序中添加System...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部