Invalid byte tag in constant pool: 19

Tomcat 8.5启动报错‘Invalid byte tag in constant pool: 19’?别慌,一个配置项就能搞定 本文详细介绍了Tomcat 8.5启动时遇到‘Invalid byte tag in constant pool: 19’错误的快速修复方法。通过修改catalina.properties文件中的jarsToSkip配置,跳过包含module-info.class的JAR文件扫描,有效解决兼容性问题,适用于生产环境的紧急修复。 阅读详情

一、问题

Invalid byte tag in constant pool: 19

具体错误:

org.apache.catalina.startup.ContextConfig.processAnnotationsJar Unable to process Jar entry [META-INF/versions/9/module-info.class] from Jar [file:/G:/Tomcat/webapps/blog/WEB-INF/lib/bcprov-jdk15on-1.64.jar] for annotations

二、问题分析

Tomcat报此错误明显的是加载依赖的jar导致的问题,具体到项目的哪个jar就是上面的具体错误,本项目是bcprov-jdk15on-1.64.jar导致的问题,更具体的是无法加载 [META-INF/versions/9/module-info.class] 字节码文件。
其实,即使是其他的jar也可能会导致Tomcat出现Invalid byte tag in constant pool: 19的问题。

三、问题解决

搜索了一下网页,大多都是说jar包没有用到,直接删除;甚至是修改Tomcat启动命令跳过该jar。
但是,项目确实用到了该jar包删除或者跳过加载显然不合适,最好的办法就是分析自己的错误,真正找到解决办法。
本项目bcprov-jdk15on-1.64.jar导致的问题,找到jar解压文件,清单文件下的META-INF/versions/9/module-info.class确实存在。第三方的jar我们没有办法修改,怎么办?只能查看其他版本试试或者降低到没有module-info.class文件的版本。
最终发现,1.60版本没有此class文件,1.61开始添加了此文件,于是降低版本修改依赖版本为1.60,问题解决!

解决 Tomcat 启动时 JAR 包 `Invalid byte tag in constant pool` 异常问题 在开发 Java Web 应用时,我们经常会使用 Apache Tomcat 作为 Servlet 容器进行部署和测试。然而,在项目启动过程中,有时会遇到类似于“Invalid byte tag in constant pool”的异常,这种异常通常与 Tomcat 对某些 JAR 包的解析不兼容有关,尤其是当你的项目中引入了不同版本的 JDK 和 JAR 包时。本文将详细分析这一问题的成因,并探讨几种有效的解决方案。 阅读详情

相关推荐

5个IO口驱动188数码管:查理复用算法在TM52F1363上的极致应用

本文深入解析了如何利用查理复用算法,在TM52F1363单片机上仅用5个IO口驱动188数码管。通过精密的硬件连接与软件时序控制,结合高阻态和动态扫描策略,实现了在极致资源限制下的稳定显示,为成本敏感型嵌入式产品提供了高效的IO复用解决方案。

numpy6sculptor的博客 477

完美解决tomcat启动异常:Invalid byte tag in constant pool: 19;Unable to process Jar entry [module-info.class]

tomcat启动异常:Invalid byte tag in constant pool: 19;Unable to process Jar entry [module-info.class]

weixin_43860634的博客 5991

Understanding Lockup Cells

工具会分析扫描链和EDT逻辑之间的控制时序元素的时钟的时序关系,当必须要同步时钟并保持数据完整性时插入边沿触发寄存器(lockup cells)。可以使用report_edt_lockup_cells命令来展示工具已经插入的lockup cells的详细报告。

weixin_44954910的博客 1080

Tomcat报错之Invalid byte tag in constant pool 19

org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19 单纯看报错意思无法得知为什么会报这样的错误以及如何去解决这个问题。我查阅了相关资料,并请教各路大神最终将问题定位到了 Lombok 身上。

小异常的博客 5万+

SpringBoot 整合Jasypt 实现配置文件加密读取操作详解

SpringBoot 整合Jasypt 实现配置文件加密读取操作详解

congge 4099

零基础教你学RDMA驱动开发--第8篇:队列对(QP)、完成队列(CQ)与工作请求(WR)机制剖析

本文深入剖析了RDMA(远程直接内存访问)中的核心机制:队列对(QP)、完成队列(CQ)和工作请求(WR)。QP作为通信端点包含发送队列(SQ)和接收队列(RQ);WR是用户提交的操作指令,转换为工作队列元素(WQE)后由网卡异步执行;CQ则提供完成通知机制。文章详细介绍了三者的协作原理,包括QP状态机、WR提交方式、CQ轮询机制,以及关键的信号控制技术(Signaled Mode)来优化性能。同时对比了SEND/RECV和RDMA WRITE两种模式的差异,提供了调试技巧和最佳实践。这些机制共同构成了RD

amy_mhd的博客 157

tomcat启动报错:Invalid byte tag in constant pool: 19

提供给其他系统使用的jar包造成tomcat启动报错: Unable to process Jar entry [module-info.class] from Jar [jar:file:/xxxxxxxx/lombok-1.18.4.jar!/] for annotations org.apache.tomcat.util.bcel.classfile.ClassFormatException...

虫一 8万+

Data+AI━━数仓建模的智能进化之路!

Data+AI━━数仓建模的智能进化之路!

ith321的博客 1745

Invalid byte tag in constant pool: 19 与 javax/el/ELManager问题解决

Invalid byte tag in constant pool: 19 与 javax/el/ELManager问题解决

asdfgh0077的博客 151

【DexGraspNet与多指手抓取算法详解】第三章 DexGraspNet数据集构建机理

抓取姿态描述多指手与物体的相对空间关系,包含手掌位姿与手指关节配置。

VectorShift的博客 498

用 CORRESPONDING #( ) 优雅复制同名字段:从 MOVE-CORRESPONDING 到现代 ABAP 结构映射的关键差异与最佳实践

摘要:本文深入探讨了SAP ABAP中结构数据复制的两种主要方式——传统MOVE-CORRESPONDING与现代CORRESPONDING #()的核心差异。重点分析了现代构造表达式会初始化目标结构的关键特性,通过SAP_GWFND开发中的实际案例展示了这一差异可能引发的线上问题。同时介绍了使用BASE保留目标字段值的技巧,以及通过MAPPING处理字段名不一致的场景。文章为ABAP开发者提供了在S/4HANA、BTP及RAP等现代架构下的数据映射最佳实践,帮助规避常见的维护陷阱。(149字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 2262

解决Invalid byte tag in constant pool: 19方法

问题描述 项目启动时,控制台输出org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19 解决办法 升级tomcat8.0修改为8.5版本问题解决 (如果没有解决,则尝试把导入的jar包使用低版本) ...

教官的博客 4961

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Tomcat启动报错:ClassFormatException: Invalid byte tag in constant pool: 19

一. 遇到问题❓ ❗️先放一张tomcat启动时报错的日志❗️ 我所用的JDK版本为:jdk8 tomcat版本为:tomcat 7.xx 从字面以后可以看到 Unable to process Jar entry xxx for annotations (无法处理注释的xx Jar包的条目) 对应的报错是**ClassFormatException **( 类格式异常) 这个异常继承了RuntimeException(运行时异常) 官方解释如下: Thrown when the BCEL att

houdou2092的博客 8184

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

程序启动时报: Invalid byte tag in constant pool: 19

今天系统部署到新的测试机上面出现一个问题 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)...

一只没有脚的鸟 1万+

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Invalid byte tag in constant pool: 19 tomcat7 解决办法

nvalid byte tag in constant pool: 19 原因是由于tomcat7jar包 与项目项目某些jar包冲突造成。 解决办法: 1.最简单的升级tomcat版本 7升级到8或更高合适版本 2.不更换tomcat方法:找到tomcat安装文件中的catalina.properties文件,打开该文件,找到tomcat.util.scan.DefaultJarScanner.jarsToSkip 在底部添加报错的jar:lombok-1.18.8.jar 把报错jar包忽略调就不会

qq_31641113的博客 3730

tomcat lombok 报 Invalid byte tag in constant pool: 19

提供给其他系统使用的jar包造成tomcat启动报错: Unable to process Jar entry [module-info.class] from Jar [jar:file:/xxxxxxxx/lombok-1.18.4.jar!/] for annotations org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19 问题信息搜集: 有人给...

dns007 1971

关于IDEAClassFormatException: Invalid byte tag in constant pool: 19错误。

比如上面报错apache-tomcat-8.0.18/webapps/ROOT/WEB-INF/lib/lombok-1.18.26.jar!-info.class问题得以解决。只不过并不是去maven仓库里找jar包,而是去WEB-INF下的lib中找到对应的jar包,删除module-info.class即可。有时可能还会遇到apache-tomcat-8.0.18/webapps/ROOT/WEB-INF/lib/log4j-api-2.10.0.jar的报错。这时就要去删除jar包中。

qq_68890680的博客 819

Tomcat 启动报错:Invalid byte tag in constant pool: 19

看网上有很多文章博客都是说tomcat版本过低,需升级tomcat8,而我的本身就是tomcat8,还是出现这个问题。 后来摸着问题查找相应的jar包发现有这个jackson-annotations-2.10.3.jar中的module-info.class就不行了 直接在代码里面修改 <plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin<

Tongyao 2996
上一篇: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
下一篇: Could not create connection to database server. Attempted reconnect 3 times.
Litepal
博客等级 码龄12年 17粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值