问一个和java版本有关系的问题。。。

NightTree 2006-02-23 05:25:39
public class Welcome
{
public static void main(String[] args)
{
System.out.print("welcome you");
}
}

上述代码在jdk1.4.2下没问题,可是最近下了Download JDK 5.0 Update 6,其文件是jdk-1_5_0_06-windows-i586-p.exe
结果再执行就抱错了,如下:
C:\Java1\Code>javac Welcome.java

C:\Java1\Code>java Welcome
Exception in thread "main" java.lang.UnsupportedClassVersionError: Welcome (Unsu
pported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)

这是怎么回事呢,是版本的问题吗?
...全文
87 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
NightTree 2006-02-23
  • 打赏
  • 举报
回复
献了。。。
NightTree 2006-02-23
  • 打赏
  • 举报
回复
果然,一语惊醒梦中人啊,低级错误啊,明白了。。。献分。。。
interpb 2006-02-23
  • 打赏
  • 举报
回复
应该是Oracle的JDK

看一下你的环境变量,是不是有Oracle的JDK在里面



NightTree 2006-02-23
  • 打赏
  • 举报
回复
恩,按照interpb(曾曾胡)所说查询如下:
C:\Java1\Code>javac -version
javac 1.5.0_06
javac: 无源文件
C:\Java1\Code>java -version
java version "1.3.1_01"

果然不一样,但是问题是我这台机器上从来没有装过jdk1.4.2阿,是直接装的jdk-1_5_0_06-windows-i586-p.exe ,javac和java执行文件都是安装后就有的,我自己没有动过的阿,怎么会版本不一样呢?
请教。。。
mahb520 2006-02-23
  • 打赏
  • 举报
回复
1.4.2和5.0本来就有区别。
interpb 2006-02-23
  • 打赏
  • 举报
回复
肯定是版本的问题啊

原因是编译java文件的javac.exe与解释运行class文件的java.exe版本不一样

在命令行下面
分别运行javac -version 和 java -version 看看版本是不是一样

62,625

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧