java Java7 ClassFormatError:创建对象时非法局部变量表长度

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/17993041/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-11-01 19:47:43  来源:igfitidea点击:

Java7 ClassFormatError: Illegal local variable table length while creating the object

javajakarta-eejava-7

提问by Satish

I am getting this strange error while executing the following code.

执行以下代码时出现这个奇怪的错误。

EncoderRequest encoderRequest = new EncoderRequest(sid,appTxnId,pfid,transactionType,"",isUpdatetype9,true);

I have checked all the parameter values are valid. I am using java7 plateform. can any one have come across this situation, please help.

我已检查所有参数值是否有效。我正在使用 java7 平台。有没有人遇到过这种情况,请帮忙。

following is the part of stacktrace i am getting.

以下是我得到的堆栈跟踪的一部分。

Caused by: java.lang.ClassFormatError: Illegal local variable table length 48 in method com.cmc.facts.encoder.EncoderRequest.<init>(JLjava/lang/String;Ljava/lang/Long;Lcom/cmc/facts/enums/TransactionType;Ljava/lang/String;ZZ)V at com.cmc.facts.nist.NistReaderModel.preprossingOfNistFile(NistReaderModel.java:180) at com.cmc.facts.action.interstate.InterStateAction.uploadFIIF(InterStateAction.java:645) ... 115 more

Caused by: java.lang.ClassFormatError: Illegal local variable table length 48 in method com.cmc.facts.encoder.EncoderRequest.<init>(JLjava/lang/String;Ljava/lang/Long;Lcom/cmc/facts/enums/TransactionType;Ljava/lang/String;ZZ)V at com.cmc.facts.nist.NistReaderModel.preprossingOfNistFile(NistReaderModel.java:180) at com.cmc.facts.action.interstate.InterStateAction.uploadFIIF(InterStateAction.java:645) ... 115 more

回答by Cristian Meneses

There have been previous reports of the same error, on Junit tests and similar..

在 Junit 测试和类似的测试中,之前曾有过相同错误的报告。

For them, adding the JVM arg -XX:-UseSplitVerifierseemed to work

对他们来说,添加 JVM arg-XX:-UseSplitVerifier似乎有效

Have a look at this article

看看这篇文章

回答by AbhishekAsh

You can also do this config : Add -noverifyin your jvg args

您也可以执行此配置:添加-noverify您的 jvg args

For ant config you can do : <jvmarg value="-noverify"/>

对于 ant 配置,您可以执行以下操作: <jvmarg value="-noverify"/>

You can follow the linkfor more details on why we need to do this.

您可以点击链接了解有关我们为什么需要这样做的更多详细信息。