在 hadoop 中运行作业 - 错误

Posted

技术标签:

【中文标题】在 hadoop 中运行作业 - 错误【英文标题】:running job in hadoop - ERROR 【发布时间】:2016-09-29 21:44:07 【问题描述】:

我正在尝试在 hadoop ~ $ Desktop/HadoopProject2016.jar input output 中运行一个程序,但我不断收到 this error

线程“主”java.lang.UnsupportedClassVersionError 中的异常: hadoop_project_16/AggregateJob:不支持的major.minor 52.0版 在 java.lang.ClassLoader.defineClass1(Native Method) 在 java.lang.ClassLoader.defineClass(ClassLoader.java:803) 在 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(Native Method) 在 java.net.URLClassLoader.findClass(URLClassLoader.java:354) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:425) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:358) 在 sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

我也不知道如何检查输出...错误是否正常?

【问题讨论】:

Unsupported major.minor version 52.0 表示您使用的是 java 8 并且不受支持。换成 java 7 试试? Unsupported major.minor version 52.0 @Gangaraju 我改成 java 7 但还是弹出来。 【参考方案1】:

Hadoop jars,您需要检查它们。确保所有 jar 都已更新(最好为每个 jar 引入最新版本)并相互兼容。你可以在http://www.mvnrepository.com/找到版本依赖

【讨论】:

【参考方案2】:

1) 检查工作区(例如:eclipse 属性窗口)中项目的 JRE(java 版本)是否与运行 hadoop jar 命令的机器中的 java 版本相同。

2) 我假设您将 jar 提交为 hadoop jar

【讨论】:

以上是关于在 hadoop 中运行作业 - 错误的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop 挂起作业终止命令

如何在Hortonworks沙箱Hadoop平台中运行mapreduce作业

如何从 Eclipse 调试 hadoop mapreduce 作业?

hadoop 模式下的 Mrjob:启动作业时出错,输入路径错误:文件不存在

如何使用新 API 以编程方式获取 Hadoop 集群中所有正在运行的作业?

怎么在hadoop上部署mapreduce