Jetty启动Dubbo应用发生invalid constant type: 18 异常

原创
2017/06/07 13:25
阅读数 1.3K

一、错误信息

Caused by: java.io.IOException: invalid constant type: 18
        at javassist.bytecode.ConstPool.readOne(ConstPool.java:1113)
        at javassist.bytecode.ConstPool.read(ConstPool.java:1056)
        at javassist.bytecode.ConstPool.<init>(ConstPool.java:150)
        at javassist.bytecode.ClassFile.read(ClassFile.java:765)
        at javassist.bytecode.ClassFile.<init>(ClassFile.java:109)
        at javassist.CtClassType.getClassFile2(CtClassType.java:191)
        ... 92 more

二、解决方案

1. 根据异常日志中dubbo调用javassist编译字节码出错,定位javassist版本问题;

2. 由于同样的dubbo项目在jdk6\jdk7下没有问题,当前项目使用的jdk8,所以应该是jdk8和javassist冲突;

3. 将dubbo引入的javassist-3.15.0-GA去掉,引入更高版本直到javassist-3.18.0-GA项目可以正常启动;

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部