java编译中出现了Exception in thread “main" java.lang.UnsupportedClassVersionError

作者&投稿:揣民 (若有异议请与网页底部的电邮联系)
java是什么语言?~

Java编程界的常青树

下载个
JDK
安装一下,在下个
NetBeans
6.0安装一下
就可以在
NetBeans

编写代码,编写完后
右键点击运行
就能看到
结果!记得不要把顺序弄错!

       这个问题确实是由较高版本的JDK编译的java class文件试图在较低版本的JVM上运行产生的错误。

    1、解决措施就是保证jvm(java命令)和jdk(javac命令)版本一致。如果是linux版本,则在命令行中分别输入java -version和javac -version命令来查看版本是否一致。这里假设都是1.7版本。

    2、如果都一致,但还是解决不了问题,那么你肯定不是直接在命令行中用javac来编译的,而是用类似于eclipse、netbeans这样的编译器来编译的。因为很多编译器都自带javac,而不是采用操作系统中的编译器。如果你的编译器是eclipse的话,那么需要在项目的属性里设置jdk版本,方法是右击项目-->properties-->java compiler --> Enable project specific settings -->将compiler compliance level设置为1.7,也就是与jvm一致的版本(在命令行中java -version所显示的版本)。

    综上,如果你是用编译器来编译的话,请首先确保编译器自带的jdk版本是否和操作系统中的java版本一致。

见下图:



这个问题是由较高版本的JDK编译的java class文件试图在较低版本的JVM上运行产生的错误。

1、解决措施就是保证jvm(java命令)和jdk(javac命令)版本一致。如果是linux版本,则在命令行中分别输入java -version和javac -version命令来查看版本是否一致。这里假设都是1.7版本。

2、如果都一致,但还是解决不了问题,那么你肯定不是直接在命令行中用javac来编译的,而是用类似于eclipse、netbeans这样的编译器来编译的。因为很多编译器都自带javac,而不是采用操作系统中的编译器。如果你的编译器是eclipse的话,那么需要在项目的属性里设置jdk版本,方法是右击项目-->properties-->java compiler --> Enable project specific settings -->将compiler compliance level设置为1.7,也就是与jvm一致的版本(在命令行中java -version所显示的版本)。

3、综上,如果你是用编译器来编译的话,请首先确保编译器自带的jdk版本是否和操作系统中的java版本一致。一般是jdk和jvm版本不一致导致,可以在cmd命令下输入java -version和javac -version看版本是否一致,不一致的话需要改JAVA_HOME保证一致。

拓展资料:

Java 异常处理

异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。异常发生的原因有很多,通常包含以下几大类:

1、用户输入了非法数据。

2、要打开的文件不存在。

3、网络通信时连接中断,或者JVM内存溢出。

这些异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的。要理解Java异常处理是如何工作的,你需要掌握以下三种类型的异常:

1、检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。例如要打开一个不存在文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。

2、运行时异常: 运行时异常是可能被程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略。

3、错误: 错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译也检查不到的。

参考资料:Java 异常处理_w3cschool



这个问题确实是由较高版本的JDK编译的java class文件试图在较低版本的JVM上运行产生的错误。

1、解决措施就是保证jvm(java命令)和jdk(javac命令)版本一致。如果是linux版本,则在命令行中分别输入java -version和javac -version命令来查看版本是否一致。这里假设都是1.7版本。

2、如果都一致,但还是解决不了问题,那么你肯定不是直接在命令行中用javac来编译的,而是用类似于eclipse、netbeans这样的编译器来编译的。因为很多编译器都自带javac,而不是采用操作系统中的编译器。如果你的编译器是eclipse的话,那么需要在项目的属性里设置jdk版本,方法是右击项目-->properties-->java compiler --> Enable project specific settings -->将compiler compliance level设置为1.7,也就是与jvm一致的版本(在命令行中java -version所显示的版本)。

综上,如果你是用编译器来编译的话,请首先确保编译器自带的jdk版本是否和操作系统中的java版本一致。

扩展资料:

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程  。

Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。

编程工具

Eclipse:一个开放源代码的、基于Java的可扩展开发平台。

NetBeans:开放源码的Java集成开发环境,适用于各种客户机和Web应用。

IntelliJ IDEA:在代码自动提示、代码分析等方面的具有很好的功能。

MyEclipse:由Genuitec公司开发的一款商业化软件,是应用比较广泛的Java应用程序集成开发环境 。

EditPlus:如果正确配置Java的编译器“Javac”以及解释器“Java”后,可直接使用EditPlus编译执行Java程序 。

参考资料:百度百科:Java



这个问题确实是由较高版本的JDK编译的java class文件试图在较低版本的JVM上运行产生的错误,可以通过下述方法进行解决:

1、检查jvm(java命令)和jdk(javac命令)版本是否一致。如果是linux版本,则在命令行中分别输入java -version和javac -version命令来查看版本是否一致。 

2、如果都一致,但还是解决不了问题,那么肯定不是直接在命令行中用javac来编译的,而是用类似于eclipse、netbeans这样的编译器来编译的。因为很多编译器都自带javac,而不是采用操作系统中的编译器。

3、如果你的编译器是eclipse的话,那么需要在项目的属性里设置jdk版本,方法是右击项目-->properties-->java compiler --> Enable project specific settings -->将compiler compliance level设置为1.7,即可解决问题。

拓展资料:

编译时首先读入java源程序(即在MS-DOS命令行下键入javac HelloWorld.java等文件名参数和其他选项参数),然后进行语法检查,如果出现问题就终止编译。语法检查通过后,生成中间代码即字节码,字节码文件名和源文件名相同,扩展名为.class。

参考资料:百度百科-JAVA编译器



出现这种情况是由较高版本的JDK编译的java class文件试图在较低版本的JVM上运行产生的错误。

1、解决措施就是保证jvm(java命令)和jdk(javac命令)版本一致。如果是linux版本,则在命令行中分别输入java -version和javac -version命令来查看版本是否一致。这里假设都是1.7版本。

2、如果都一致,但还是解决不了问题,那么你肯定不是直接在命令行中用javac来编译的,而是用类似于eclipse、netbeans这样的编译器来编译的。因为很多编译器都自带javac,而不是采用操作系统中的编译器。直接在命令行中用javac来编译就好了。

扩展资料:

javac 工具读取用 Java 编程语言编写的类和接口定义,并将它们编译成字节码类文件。

有两种方法可将源代码文件名传递给 javac:

如果源文件数量少,在命令行上列出文件名即可。

如果源文件数量多,则将源文件名列在一个文件中,名称间用空格或回车行来进行分隔。然后在 javac 命令行中使用该列表文件名,文件名前冠以 @ 字符。

参考资料:百度百科-javac编译器

参考资料:百度百科-JAVA




Java出现???h???
如果在 Java 代码中出现了 ???h???,这可能是由于编码问题导致的。具体地说,这可能是由于使用了非 UTF-8 编码保存了包含中文的源代码文件,或者在编译 Java 代码时使用了错误的编码格式。为了解决这个问题,可以尝试以下方法:确认编码格式:使用合适的文本编辑器打开 Java 代码文件,并确认其编码格式...

java编译出错:?
1、首先,使用未声明的标识符“ p”的警告,表示此处存在无法识别的p,如下图所示,然后进入下一步。2、其次, p值可以直接找到。 p下有一个_,表示出现了问题,如下图所示,然后进入下一步。3、接着,完成上述步骤后,如果未使用p值,则将其直接删除。 如果需要,直接声明。 声明期间很可能...

Java编程中 常见的异常有哪几种
Throwable:是指在在Java.lang包中的一个类,其包含了所有的异常和错误,其中类Error和Exception 是它 的子类。Thows:是指在解决编译时异常,将方法中异常抛给上一级,在方法后面要加Throw Exception来进行抛。throw:是指在自定义异常时,如果方法出现异常,那么将作为引用方法的对象抛出。即抛出异常。...

为什么编译运行java出现了java. lang.无法解析。
我尝试了网上的方法均未成功,可能是这个错误原因太低级了,而好多小白没有经过专业人员带领,所以犯了一个业余的错误。解决方法是:规范java的工程、类的创建方法!1,先New一个工程;2,再new一个类,然后以这个类文件为基础,进行编程和调试。好些人直接新建一个.Java文件进行编程运行,往往就报题目...

java编译中出现了Exception in thread “main" java.lang.UnsupportedClas...
如果你的编译器是eclipse的话,那么需要在项目的属性里设置jdk版本,方法是右击项目-->properties-->java compiler --> Enable project specific settings -->将compiler compliance level设置为1.7,也就是与jvm一致的版本(在命令行中java -version所显示的版本)。综上,如果你是用编译器来编译的话...

Java编程,为啥会报错?
在Java编程中,报错是非常常见的情况。Java是一种强类型静态语言,编译过程中对类型和语法的检查比较严格,所以很容易出现报错的情况。当我们遇到报错时,我们需要仔细分析错误信息,找出问题所在并解决它。更系统全面的学习资料,点击查看首先,报错可能是由于语法错误造成的。在Java编程中,如果代码中有拼写...

java 编译时出现“使用了未经检查或或不安全的操作”,请高手帮忙_百度...
你的这一句有问题: new FileReader("E01_FileIntoList.java"));路径写错了,加上这个.java文件所在的盘符。如: new FileReader("D:\/E01_FileIntoList.java"));这个看你这文件放在哪个盘里面咯。

java在编译时出现此情况 怎么解决???坐等答案
回答:缺少servlet-api.jar 这个类包 servlet-api.jar属于java-ee的范畴,你用的jdk 是java-se的,所以会出现找不到类的错误。 servlet-api.jar在Tomcat的lib目录下,将这个jar的路径添加到环境变量classpath中

java在编译中出现Exception in thread "main"java.lang.NoClassDefFoundE...
有几种可能:1.类名要和JAVA文件同名 2.是否window自动隐藏了文件后缀名,不要隐藏后缀名,把文件后缀改为.JAVA 3.是否import 你需要的包名 4.JAVA的环境变量是否设置正确

java编译中出现了‘}’expected }是什么意思啊?
在本文代码后再加三个}}}就可以了!

同仁县17114775918: java在编译中出现Exception in thread "main"java.lang.NoClassDefFoundError:com/sun/tools/main -
歹印弘旭: 有几种可能:1.类名要和JAVA文件同名2.是否window自动隐藏了文件后缀名,不要隐藏后缀名,把文件后缀改为.JAVA3.是否import 你需要的包名4.JAVA的环境变量是否设置正确

同仁县17114775918: 在运行JAVA文件时,有的可以编译成功,有的却显示exception in thread 'main' java.lang.nosuchmethoderro -
歹印弘旭: 这个不是编译时期的问题:用javac命令对java文件的操作叫编译;用java命令对.class的操作才可能是运行,简单运行过程需要类中有含有静态的main方法;public static void main(String[] args){}

同仁县17114775918: java编译中出现了Exception in thread “main" java.lang.UnsupportedClassVersionError -
歹印弘旭: 我自己的经验,很多人代码没有错,但是用JDK编译的时候却出错或执行的时候出现MAIN函数的错误,我估计是你的代码里面有加上了package包,这个会使你的类路径不是当前路径,具体我也没研究,我一般都用工具来做开发.还有你的类里面有内部类或嵌套类,这样虽然你编译了一个成功了,但是执行的话却会出错的.

同仁县17114775918: java初学者:在命令窗口中执行编译命令时,系统提示exception in thread "main“ java.lang.noclass...
歹印弘旭: 每个java源文件中只有一个public的class 而且这个java源文件的主文件名必须与这个class同名,大小写都要一样 所以你要么把public class computer改为public class hello 要么把hello.java改为computer.java 顺便,建议你类名按PSCALL命名法,也就是每个单词的第一个字母大写,包括第一个单词. 顺便说一下,编译用 javac hello.java或javac computer.java 执行用 java hello或java computer 即,执行时java后面接的是类名而不是文件名

同仁县17114775918: 为什么我的JAVA程序可以编译但运行时会出现Exception in thread "main" java.lang.NoClassDefFoundError:HelloJava
歹印弘旭: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException 这句话的意思是MAIN主线程 出错 原因是 数组越界错误 int a[]=new int[5]; for(i=0;i<=5;i++) a[i]=i; a[5] = 5 数组是从0开始算的 所以最大只能取到a[4]

同仁县17114775918: java中jdk编译运行时总是提示如下错误,请高手帮忙解释:Exception in thread "main" java.lang.Unsupport -
歹印弘旭: 是不是没有写完错误呀?按照你提示的应该是UnsupportedOperationException.那是应该操作运算某些错误,要看源码才知道.

同仁县17114775918: cmd中运行java程序总是出现Exception in thread "main" java.lang.NoClassDefFoundError,怎么办? -
歹印弘旭: 这个错误就是找不到你定义的MyFrame 这个类. 建议你再说详细点.你在什么目录下执行的 java 命令? 你的.class 文件放在什么位置?你的classpath 环境变量指向那里? 建议: 1 .classpath 中配置 包含当前目录 原有的 变量后追加“;.”然后...

同仁县17114775918: .JAVA无法编译,出现这样的情况Exception in thread “main” java. Lang.noclassdeffoun -
歹印弘旭: 找不到方法入口...你的类有MAIN方法没???还可能是环境变量的设置问题.把java安装目录里面的bin目录的路径添加到path,然后classpath里面加一个.;最后JAVAHOME也是添加JAVA安装木录里面到bin目录的路径

同仁县17114775918: java编译出错Exception in thread main java lang.NoSuchMethodError -
歹印弘旭: 这个问题是环境变量的问题 问题出在环境变量的CLASSpath 有些人是在我的电脑高级属性里环境变量中配置,很麻烦.我告诉你个简单的办法 我们都希望能在当前目录下进行编译,那么直接输入set classpath=.回车 现在你再编译试试是不是解决了O(∩_∩)O~

同仁县17114775918: java运行出现exception in thread main java.lang.arrayindexOutOfBoundsException -
歹印弘旭: java虚拟机运行时没代参数,所以抛出数组下标越界异常.因为字符串数组为null;在doc窗口中使用命令javac if1.java 编译后,输入命...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网