Java spark submit中出现不支持的类版本错误

Java spark submit中出现不支持的类版本错误,java,maven,apache-spark,java-8,Java,Maven,Apache Spark,Java 8,尝试在安装了Java版本:jdk1.7的远程机器上运行我使用maven和jdk1.8构建的spark应用程序。 使用spark submit命令: ./bin/spark-submit --class myapp.Main --master local[*] /home/mbala/myJars/CDCJar/myapp-0.0.1-SNAPSHOT.jar /home/mbala/myJars/CDCJar/previous.csv /home/mbala/myJars/CDCJar/sour

尝试在安装了Java版本:jdk1.7的远程机器上运行我使用maven和jdk1.8构建的spark应用程序。 使用spark submit命令:

./bin/spark-submit --class myapp.Main --master local[*] /home/mbala/myJars/CDCJar/myapp-0.0.1-SNAPSHOT.jar /home/mbala/myJars/CDCJar/previous.csv /home/mbala/myJars/CDCJar/source.csv /home/mbala/fer
获取以下异常:

线程“main”java.lang.UnsupportedClassVersionError:myapp/main:Unsupported中出现异常 大.小版本52.0 位于java.lang.ClassLoader.defineClass1(本机方法) 位于java.lang.ClassLoader.defineClass(ClassLoader.java:800) 位于java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 位于java.net.URLClassLoader.defineClass(URLClassLoader.java:449) 在java.net.URLClassLoader.access$100(URLClassLoader.java:71) 在java.net.URLClassLoader$1.run(URLClassLoader.java:361) 在java.net.URLClassLoader$1.run(URLClassLoader.java:355) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(URLClassLoader.java:354) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:425) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:358) 位于java.lang.Class.forName0(本机方法) 位于java.lang.Class.forName(Class.java:274) 位于org.apache.spark.util.Utils$.classForName(Utils.scala:225) 位于org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:686) 位于org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:185) 位于org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:210) 位于org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:124) 位于org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)


如果使用
Java开发工具包8
构建
Java
程序,则需要至少8的
Java运行时才能运行它,否则会出现此异常。升级远程计算机上的java版本或使用JDK 7构建,以避免此类问题。

原因正是您在java 8编译的代码描述中所写的,在java 7上运行问题是,我将jJAVA_设置为HOME,但每当我注销然后重新连接时,我发现它没有重新设置。这可能有助于解决此问题,我尝试了此方法,但每当我连接时,我必须重新执行此操作。您执行此操作时出现问题,因为一旦完成,它将在连接时自动设置。目标操作系统是什么?您可以使用JDK 8编译代码并在JDK 7上运行。您必须设置目标类文件版本,例如,在使用maven时,设置属性
1.7