背景:

新需求需要引入新jar包,引入后发现本地启动没有报错,发到测试环境提示某个bean无法创建,nested exception is java.lang.VerifyError: Bad type on operand stack。

解决:

1,没有引入新jar包之前是没有提示这个报错了,猜测是jar包冲突。

2,到测试环境的lib目录根据新引入jar包的关键字找到如图所示的jar,图中最下面三个jar是新功能需要引入的jar,多了excelmagic-1.3-20190806.100559-3.jar这个包,基本确定是这个jar造成的冲突。



3,通过idea自带的show dependencies没有找到这个jar是哪个包引入的

4,通过maven helper没有找到关于这个jar的冲突记录

5,快11点了下班回家。回到家灵机一动,能否从jenkins构建日志查查。最终根据这个jar的关键字找到如图构建日志:



6,在引入这个baseinfo包的地方exclusion掉excelmagic之后,重新构建成功。

<exclusion>
<artifactId>excelmagic</artifactId>
<groupId>com.隐藏.fop.fnp.excelmagic</groupId>
</exclusion>

7,回过头来用maven helper查看,至此不明白的地方在于为何这个excelmagic包没有体现在baseinfo包上,并且这个networkinit包在pom里是已经做了exclude的



8,把目光集中在引入baseinfo包的exclusion的写法上,如下:

<exclusion>
<groupId>*</groupId>
<artifactId>*</artifactId>
</exclusion>

这个用法没怎么用过,不清楚啥原理。将其注释后,在maven helper能找到excelmagic这个包是由baseinfo引入的。



9,洗洗睡觉,狗命要紧,明天再研究。

jar包冲突解决的更多相关文章

  1. Android 第三方库导致jar包冲突解决办法

    这几天的任务是将mapbox的工程合到程序中去,但是合并过程却出现了问题 合并方法: 在app的build.gradle中添加 dependencies { compile ('com.mapbox. ...

  2. 曹工杂谈:一例简单的Jar包冲突解决示例

    Jar包冲突的相关文章: 了不得,我可能发现了Jar 包冲突的秘密   一.前言 jar包冲突分多种,简单理解来说,就是同package且同名的类在多个jar包内出现,如果两个jar包在同一个clas ...

  3. xml-apis.jar getTextContent() jar包冲突解决(getTextContent()方法无法找到)

    1.引用包: import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.NodeList; 2.方法中应用: ...

  4. tomcat web工程 jar包冲突解决方法

    目前在部署工程时,遇到了一个问题,报错信息如下: See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet ...

  5. jar包冲突解决方法

    import java.io.File;import java.io.IOException;import java.util.ArrayList;import java.util.Enumerati ...

  6. idea升级maven工程jar包版本和解决jar包冲突

    原来用过eclipse的都知道,想要升级maven工程的jar包版本或者解决jar包冲突,直接在pom文件下的dependency hierarchy视图下右击冲突的jar包,将其exclude掉,然 ...

  7. 【BUG】websphere找不到类或jar包冲突

    来自:http://liuwei1578.blog.163.com/blog/static/49580364200991572642653/ Jar包冲突问题是在大型Java软件开发中经常遇到的问题, ...

  8. Maven 解决JAR包冲突

    在JAR 冲突的情况下, 利用Eclipse方式解决JAR包冲突时比较方便简洁的,步骤如下 1. 在Eclipse 中打开pom.xml , 选择  “Dependency  Hierarchy” 2 ...

  9. sbt公布assembly解决jar包冲突 deduplicate: different file contents found in the following

    一个.问题定义 近期使用sbt战斗assembly发生故障时,包,在package什么时候,发生jar包冲突/文件冲突,两个相同class来自不同jar包classpath内心冲突. 有关详细信息:我 ...

随机推荐

  1. [JAVA]标准IO流操作

    import java.io.*; /** * @Description: * @projectName:JavaTest * @see:PACKAGE_NAME * @author:郑晓龙 * @c ...

  2. Redux的理解与使用

    一.什么是Redux? Redux是一个第三方状态管理的js库,它不仅仅可以适用于react框架,还可以用于其他的vue,auglar等框架.只不过react的生态中不包括一个状态管理的库而已,所以与 ...

  3. 双向绑定和 vuex 是否冲突

    在严格模式下确实有问题,解决方案: https://vuex.vuejs.org/zh/guide/forms.html

  4. element-ui 表单校验 Rules 配置 常用黑科技

    type 指示type要使用的验证器.可识别的类型值为: string:类型必须为string.type 默认是 string // 校验 string: [ {type: 'string', mes ...

  5. linux专题(一):小白的开始以及相关的学习链接

    转载自:https://www.cnblogs.com/ggjucheng/archive/2011/12/16/2290158.html 学习Linux也有一阵子了,这过程中磕磕撞撞的,遇到了问题, ...

  6. 第四章:View的工作原理

    4.1 ViewRoot和DecorView ViewRoot对应于ViewRootImplement类,它是连接WindowManager和DecorView的纽带,View的三大流程均是通过Vie ...

  7. 如何获取json某一级节点的数据

    如何获取json某一级节点的数据 最近做项目有获取和设置固定格式某一级节点值的需求.但是要一级一级地取对于多级的结构来说代码过于冗余且重复,于是写了个递归的方法根据json路径完成值的定点操作.废话不 ...

  8. Python3的一些基本输入输出

    # python3 # 基本输入输出 #学会使用split()的使用是关键,input()的返回值一定是字符类型 .-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. ...

  9. .net core 发布程序命令(自带运行环境)

    dotnet publish -c Release -r linux-x64 --self-contained true

  10. 2020 年百度之星&#183;程序设计大赛 - 初赛三

    2020 年百度之星·程序设计大赛 - 初赛三解题思路及代码(Discount.Game.Permutation) 1.Discount Problem Description学皇来到了一个餐馆吃饭. ...