在Dubbo初始化的时候遇上了两个启动失败问题。
Initialization of bean failed; nested exception is java.lang.RuntimeException: java.io.IOException: invalid constant type: 18
在Dubbo实现Api类的时候,遇上了一个Bean初始化的问题,向下翻日志得知
Caused by: java.lang.RuntimeException: java.io.IOException: invalid constant type: 18
at javassist.CtClassType.getClassFile2(CtClassType.java:204) ~[javassist-3.15.0-GA.jar:na]
at javassist.compiler.MemberResolver.lookupMethod(MemberResolver.java:111) ~[javassist-3.15.0-GA.jar:na]
at javassist.compiler.MemberResolver.lookupMethod(MemberResolver.java:97) ~[javassist-3.15.0-GA.jar:na]
at javassist.compiler.TypeChecker.atMethodCallCore(TypeChecker.java:711) ~[javassist-3.15.0-GA.jar:na]
at javassist.compiler.TypeChecker.atCallExpr(TypeChecker.java:688) ~[javassist-3.15.0-GA.jar:na]
at javassist.compiler.JvstTypeChecker.atCallExpr(JvstTypeChecker.java:157) ~[javassist-3.15.0-GA.jar:na]
看上去是 javassist-3.15.0-GA.jar:na 这个包有问题,查查百度,得知需要提升包版本
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.18.1-GA</version>
</dependency>
用了这个依赖,java.io.IOException: invalid constant type: 18 的问题解决了。
再次启动项目
error creating bean with name 'fileServiceImpl' defined in file [/Users/12dong/IdeaProjects/files-service/target/classes/com/qiqu/filesservice/service/impl/FileServiceImpl.class]: Initialization of bean failed; nested exception is java.lang.NoClassDefFoundError: org/apache/log4j/Logger
看来缺少log4j日志,补上依赖
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.9</version>
</dependency>
问题解决