Tomcat启动报错:严重: Unable to process Jar entry [module-info.class]

时间:2023-02-10 16:57:06

1、Spring boot 版本:2.1.4.RELEASE

2、Tomcat版本:apache-tomcat-8.0.30

3、原因:Tomcat版本底,Spring boot 2.1.4对应的Tomcat版本应该是:tomcat 8.5.16以上

4、报错代码:

严重: Unable to process Jar entry [module-info.class] from Jar [jar:file:/D:/STS/Workspaces/Cloudview/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/task-starter/WEB-INF/lib/jaxb-api-2.3.1.jar!/] for annotations

org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19

at org.apache.tomcat.util.bcel.classfile.Constant.readConstant(Constant.java:97)

at org.apache.tomcat.util.bcel.classfile.ConstantPool.<init>(ConstantPool.java:55)

at org.apache.tomcat.util.bcel.classfile.ClassParser.readConstantPool(ClassParser.java:176)

at org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:85)

at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2011)

at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1961)

at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1936)

at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1897)

at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1149)

at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:771)

at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:305)

at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)

at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5154)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

at org.apache.catalina.core.ContainerBaseStartChild.call(ContainerBase.java:1398)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:745)五月 10, 2019 9:25:46 上午 org.apache.catalina.startup.ContextConfig processAnnotationsJar

严重: Unable to process Jar entry [META-INF/versions/9/module-info.class] from Jar [jar:file:/D:/STS/Workspaces/Cloudview/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/task-starter/WEB-INF/lib/byte-buddy-1.9.12.jar!/] for annotations

org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19

at org.apache.tomcat.util.bcel.classfile.Constant.readConstant(Constant.java:97)

at org.apache.tomcat.util.bcel.classfile.ConstantPool.<init>(ConstantPool.java:55)

at org.apache.tomcat.util.bcel.classfile.ClassParser.readConstantPool(ClassParser.java:176)

at org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:85)

at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2011)

at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1961)

at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1936)

at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1897)

at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1149)

at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:771)

at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:305)

at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)

at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5154)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

at org.apache.catalina.core.ContainerBaseStartChild.call(ContainerBase.java:1398)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:745)

5、解决方法:

打开tomcat\conf\catalina.properties文件

tomcat.util.scan.StandardJarScanFilter.jarsToSkip节点增加 byte-buddy-1.9.12.jar,jaxb-api-2.3.1.jar

注意:Eclipse中的Tomcat删除后重新创建后才生效。

其中增加的节点是你报错的jar包

Tomcat启动报错:严重: Unable to process Jar entry [module-info.class]