近日在做poi解析word的时候遇到一个很奇葩的问题,在本地环境测试都没有问题,当部署到测试环境(Linux系统,weblogic10.3.6服务器)一直解析不了,报找不到方法。

具体错误如下:

Caused by: java.lang.NoSuchMethodError: org.apache.poi.hwpf.model.CHPBinTable.<init>([B[BIILorg/apache/poi/hwpf/model/CharIndexTranslator;)V

1、这时我的第一反应就是缺少jar包,于是就从服务器上找对应的jar包,但是发现存在跟本地一样的jar包,

2、然后就想到时jar包冲突,想着难道是weblogic本身的jar包和我的项目的jar包冲突了吗?我从网上找到有可能是weblogic加载类顺序的问题,根据网上的提示找到对应的文件和参数,参数确实是已经优先加载项目中的参数了,我就把这个jar包去掉,结果报的错跟原先不一样了,报的是找不到类,说明这个jar包已经加载了,说明不是jar包冲突的原因。

纠结了差不多快一天了。

3、然后就开始各种问同事,问qq技术群,说明一下,我用的是poi-scratchpad-3.9.jar和poi-3.10.1-20140818.jar这两个,同事建议我两个都用3.12试试,我就试了试,竟然意外的好了,我就在想都用3.10试试,于是就下载一个3.10的,试了试也是可以的,说明难道是版本必须使用一样的吗,但是之前我用这两个jar包成功过,所以就没有往这方面想过。还是没有搞明白到底是什么原因造成的。

记下来以供之后遇到类似的问题做个参考。

使用poi版本不同导致报错相关推荐

  1. poi版本冲突导致连续报错NoSuchMethodError、VerticalAlignment无法转换为short和ClassNotFoundException的解决办法及兼容性问题解决

    项目场景: 在一个线上业务中,涉及到excel转pdf的相关操作,使用了poi库,但是一次运维中发现该功能产生了错误的结果,生成的pdf文件为空.报错信息为Caused by: java.lang.N ...

  2. mtk一键usb驱动_三菱MRJEB驱动器报错,导致报错原因37.1参数设置范围异常?

    三菱MR-JE-B驱动器报错,导致报错原因37.1参数设置范围异常?最近海蓝机电工程师们在做一个项目,做的是三菱MR-JE-B驱动器.工程师们在实操这个项目过程中遇到各种问题,其中就像驱动器报错的问题 ...

  3. Android-Studio-Chipmunk版本解决gradle报错connection-refuse的问题

    Android Studio Chipmunk版本解决gradle报错connection refuse的问题 文章目录 Android Studio Chipmunk版本解决gradle报错conn ...

  4. Auto.js学习笔记10:实例化自定义对象,在子线程使用JSON.stringify()方法导致报错(已解决)

    申明本人使用的autojs是4.1.1版本 JSON.stringify()使用导致autojs软件直接奔溃退出. 报错核心局部代码 var sendInfoObj = { //对象areaCode ...

  5. 【致敬嵌入式攻城狮第2期活动预热征文】解决瑞萨RA2E1开发板在RT-Thread的版本中编译报错 error: ‘board_cfg.h‘ file not found

    解决瑞萨RA2E1开发板在RT-Thread的版本中编译报错 error: 'board_cfg.h' file not found 继上上周在RA2E1开发板上跑通了RT-Thread最新版本的代码 ...

  6. iOS问题记录 - Xcode 14.3版本运行项目报错

    文章目录 前言 开发环境 问题描述 问题分析 解决方案 最后 前言 看到Xcode有新版本,没忍住点了升级,然后问题来了. 2023/04/23更新:关于Xcode 14.3版本目前涉及到的三个问题, ...

  7. 安卓没删干净导致报错

    安卓没删干净导致报错,要到放安卓文件的位置去删!!! 转载于:https://www.cnblogs.com/yuanyifei/p/4154888.html

  8. Swift5版本以上#selector报错解决

    Swift5版本以上#selector报错解决 最近swift 版本变化较大,如果对一个按钮添加一个事件在oc想必都非常熟练,那么在 swift怎么去定义函数,以及函数传参呢 let btn = UI ...

  9. SylixOS移植常见问题——编译过多文件导致报错

    问题复现: 由于RealEvo IDE在Windows下使用的sh.exe支持的命令长度有限(命令要小于16K),如果需要编译的源文件过多,可能会报溢出错误或"make (e=87): 参数 ...

最新文章

  1. pycharm 自动函数注释
  2. Micropython教程之TPYBoard开发板DIY智能温控小风扇(萝卜学科编程教育)
  3. Docker容器安装配置
  4. 深度学习在美图个性化推荐的应用实践
  5. Apache的Access.log分析总结
  6. 《剑指Offer》 调整数组顺序使奇数位于偶数前面
  7. iOS Programming UIWebView 2
  8. 【长文详解】T5: Text-to-Text Transfer Transformer 阅读笔记
  9. 【离散数学】代数系统 第六章 格与布尔代数(4) 布尔代数
  10. 说唱天王 Eminem 自传《The Way I am》1
  11. linux dns mx 记录,一起学DNS系列(十三)图文详说A、CNAME、MX和NS记录
  12. Visual Studio2019安装vsix扩展文件
  13. 培训机构刷题小程序设计与制作
  14. 【java导出PDF】
  15. 淘气的小丁-将图片切换成背景
  16. Swagger 接口分组
  17. Vue-Cli 3.0 + vue.config.js
  18. 如何设置等高线坐标系并输出
  19. 视频编辑,如何截取视频片段
  20. 新概念1 0--12

热门文章

  1. 【游戏编程扯淡精粹】调试方法论
  2. tlwdr6300虚拟服务器,TP-Link TL-WDR6300路由器设置教程 TL-WDR6300怎么设置?
  3. 库里、奥尼尔等明星们带货NFT有哪些法律风险?
  4. 【maven】将本地jar导入本地maven仓库
  5. 14.查询没学过“张三“老师讲授的任一门课程的学生姓名
  6. 射频功放学习之射频放大器稳定性(一)
  7. iOS高仿美团外卖店铺主页
  8. 解决ssh连接虚拟机卡顿
  9. el-table-column设置表格内居中
  10. 一、QGC源码下载以及配置