线程"main"中的异常java.lang.VerifyError:操作数堆栈上的类型错误 [英] Exception in thread "main" java.lang.VerifyError: Bad type on operand stack
本文介绍了线程"main"中的异常java.lang.VerifyError:操作数堆栈上的类型错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在给定input.txt文件中查找最高温度的map-reduce程序中已发生此错误.我写了两列,分别是年份和温度.
This error has been occured in map-reduce program for find max-temperature in given input.txt file. i write two column which are year and temperature.
Exception in thread "main" java.lang.VerifyError: Bad type on operand stack
Exception Details:
Location:
org/apache/hadoop/mapred/JobTrackerInstrumentation.create(Lorg/apache/hadoop/mapred/JobTracker;Lorg/apache/hadoop/mapred/JobConf;)Lorg/apache/hadoop/mapred/JobTrackerInstrumentation; @5: invokestatic
Reason:
Type 'org/apache/hadoop/metrics2/lib/DefaultMetricsSystem' (current frame, stack[2]) is not assignable to 'org/apache/hadoop/metrics2/MetricsSystem'
Current Frame:
bci: @5
flags: { }
locals: { 'org/apache/hadoop/mapred/JobTracker', 'org/apache/hadoop/mapred/JobConf' }
stack: { 'org/apache/hadoop/mapred/JobTracker', 'org/apache/hadoop/mapred/JobConf', 'org/apache/hadoop/metrics2/lib/DefaultMetricsSystem' }
Bytecode:
0000000: 2a2b b200 03b8 0004 b0
at org.apache.hadoop.mapred.LocalJobRunner.<init>(LocalJobRunner.java:422)
at org.apache.hadoop.mapred.JobClient.init(JobClient.java:488)
at org.apache.hadoop.mapred.JobClient.<init>(JobClient.java:473)
at org.apache.hadoop.mapreduce.Job$1.run(Job.java:513)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1614)
at org.apache.hadoop.mapreduce.Job.connect(Job.java:511)
at org.apache.hadoop.mapreduce.Job.submit(Job.java:499)
at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:530)
at com.letsdobigdata.MaxTemperatureDriver.run(MaxTemperatureDriver.java:35)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
at com.letsdobigdata.MaxTemperatureDriver.main(MaxTemperatureDriver.java:41)
推荐答案
请尝试将JDK版本降低到7,然后从Oracle站点下载JDK.
Please try to lower the JDK version to 7.And download the JDK from oracle site.
我可以用JDK 7解决问题.
I could solve the problem with JDK 7.
这篇关于线程"main"中的异常java.lang.VerifyError:操作数堆栈上的类型错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文