Java 如何解决不受支持的ClassVersionError?

Java 如何解决不受支持的ClassVersionError?,java,unsupported-class-version,Java,Unsupported Class Version,我已经在我的系统中安装了JDK7和jdk8。但我的java程序是在1.8中编译版本,在1.7中执行。因此,它的响应是不受支持的ClassVersionError。如何克服此问题…如何解决以下错误 1) Find out due to which jar or class file this UnSupportedClassVersionError is coming? 2) Try to compile source code of that jar with the JDK ver

我已经在我的系统中安装了JDK7和jdk8。但我的java程序是在1.8中编译版本,在1.7中执行。因此,它的响应是不受支持的ClassVersionError。如何克服此问题…

如何解决以下错误

 1) Find out due to which jar or class file this UnSupportedClassVersionError is coming?

    2) Try to compile source code of that jar with the JDK version you are using to run your program, if source is available.

    3) If you don't have source try to find the compatible version of that library.

    4) Increase the JRE version you are using to run your program.

使用jdk8运行代码或使用jdk1.7编译代码。

在jdk8中运行并使用jdk7编译应该可以。也许使用jdk8编译并使用jdk7运行不要尝试这样做

Java8是比Java7更新的版本。因此,您正在使用JDK1.8编译的代码可能无法使用JDK1.7执行,因为这可能不包含JDK1.8新增的所需库或所需功能

例如,JDK1.5及更高版本支持每个循环、varargs等。因此,编译包含上述特性的源代码并尝试在JDK1.4或其早期版本上运行该程序总是会导致错误,因为这些JDK版本将无法识别此类代码snippent


但是,Oracle的JVM支持向后兼容性。因此,您始终可以在JDK的早期版本上编译代码,并在最新版本上运行。

基本上是“不要这样做”。使用1.7进行编译,或使用
-target
进行编译以针对1.7进行编译,或使用1.8运行。我们无法确定哪种解决方案是最合适的,因为我们不知道您目前为何尝试使用1.7运行。如何从cmd提示符设置路径以使用1.8执行类文件。。。它是用1.7自动执行的,正如我在问题中提到的,1.7和1.8都安装在我的系统中???我已经设置了JDK1.8的Path变量……我们甚至不知道您使用的是什么操作系统,这使得很难帮助您。为什么不卸载1.7?是的,这很有用。。。但请确认,永远不可能使用较低版本执行由较高版本编译和生成的类文件。基本上,您必须使用
-target
进行编译。如何增加jre版本。jre7和jre8都可以在我的系统中使用?阅读更多,将向您展示一个逐步解决问题的教程@user3854150