java - java.lang.VerifyError:堆栈形状不一致
问题描述
以下代码在java 1.6
and上运行良好maven 2.2.1
:
public class GTMEnrollmentOutputRecord extends com.ibm.ivj.eab.record.cobol.CobolRecord implements java.io.Serializable
{
public GTMEnrollmentOutputRecord() throws RecordException
{
try {
//Getting error at the below line
GTMEnrollmentOutputRecordType dynRecType = new GTMEnrollmentOutputRecordType();
升级到 for 后Java 1.7
,Maven 3.3.3
我IBM Webspehere 8.5.5.3
收到以下错误:
java.lang.VerifyError: JVMVRFY012 stack shape inconsistent
解决方案
Java 7 更改了堆栈帧的格式,并在JSR 202: Java Class File Specification Update中引入了格式检查。此错误最可能的原因是第 3 方库以较旧的 Java 6 格式(例如ASM或CGLIB )生成字节码。
您需要检查您的项目依赖项并确保它们都支持 Java 7。
推荐阅读
- html - 如何使用 html 插入积分符号以及上限和下限。可能吗?
- react-native - React-Native App:找不到“.js”文件路径
- php - PHP 启动:无法加载动态库 'mysqli' 未定义符号:mysqlnd_global_stats
- wordpress - 可以将条件逻辑添加到 htaccess 多站点以重定向到除单个域之外的 www 和 https 吗?
- javascript - 页面加载时如何做到这一点?
- javascript - 如何在jQuery模板中设置默认打开的导航页面
- ruby-on-rails - 当客户端通过 Ruby Timeout::timeout 中断时对 ActiveRecord/PostgreSQL 事务的影响
- java - 如何使用更新的 JPA 时间戳字段升级数据库?
- java - Libgdx 表位置设置不正确
- python-3.x - 如何在列表中连接字符串