You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否对.war格式文件执行Jdeps?执行时抛出异常该如何处理

关于在.war归档文件上运行Jdeps工具的问题解答

Jdeps原生支持直接扫描.war格式的归档文件,你遇到的报错并非是Jdeps不支持war包导致的。

报错原因

你遇到的ConstantPool$InvalidIndex: invalid index错误属于字节码解析失败问题,常见触发原因包括:

  • 你使用的Jdeps对应的JDK版本,低于war包内class文件编译时使用的JDK版本,低版本Jdeps无法识别高版本JDK新增的字节码结构
  • war包内存在损坏的class文件、被加密混淆过的非常规class文件,或是后缀为.class的非字节码资源文件
  • war包打包过程中出现损坏,导致包内文件校验不通过

解决方案

  • 优先匹配版本:使用不低于class编译版本的JDK自带Jdeps工具执行扫描,比如class用JDK17编译就用JDK17及以上版本的Jdeps
  • 常规扫描命令:直接执行jdeps [可选参数] 目标应用.war即可,常用可选参数包括-R递归扫描所有依赖、--ignore-missing-deps忽略缺失的依赖项避免扫描中断
  • 如果直接扫描war仍然报错,可以先将war解压,单独扫描有效class路径:
    1. 执行unzip 目标应用.war -d app_temp解压war到临时目录
    2. 执行jdeps -R --ignore-missing-deps app_temp/WEB-INF/classes app_temp/WEB-INF/lib/*.jar扫描业务代码和依赖包

内容的提问来源于stack exchange,提问作者Silta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 06:48:00