• 【无标题】


    java.lang.NoSuchFieldError: INSTANCE异常解决方法

    原因: 启动的项目jar包冲突,具体来说就是相同的jar包至少存在两个不同版本,例如如下日志:

    1. Caused by: java.lang.NoSuchFieldError: INSTANCE
    2. at org.apache.http.impl.io.DefaultHttpRequestWriterFactory.<init>(DefaultHttpRequestWriterFactory.java:52)

    解决方法:(背景:maven项目并且在第三方外部jar依赖)

       ❶ 找到DefaultHttpRequestWriterFactory所在jar,并记录下jar所在maven坐标,例如: DefaultHttpRequestWriterFactory所在jar包坐标如下:
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>

       ❷ pom.xml所在目录执行 mvn dependency:tree -Dverbose -Dincludes=org.apache.httpcomponents:httpclient
            $ mvn dependency:tree -Dverbose -Dincludes=org.apache.httpcomponents:httpcore
            [INFO] Scanning for projects... 
            [INFO] -------------------< azkaban.execapp:azkaban-server >-------------------
            [INFO] Building azkaban-server 3.9.0.0
            [INFO] --------------------------------[ jar ]---------------------------------
            [INFO] --- maven-dependency-plugin:2.8:tree (default-cli)---
            [INFO] \- org.apache.hadoop:hadoop-common:jar:2.7.3:compile
            [INFO]    \- net.java.dev.jets3t:jets3t:jar:0.9.0:compile
            [INFO]       \- org.apache.httpcomponents:httpcore:jar:4.1.2:compile
            [INFO] ------------------------------------------------------------------------
            [INFO] BUILD SUCCESS
    从结果可以得知hadoop-common.jar依赖传递了一个httpcore:jar,版本为4.1.2,而我的第三方外部依赖也存在一个httpcore.jar,版本为4.5,所以出错

       ❸ 排除依赖

            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-common</artifactId>
                <exclusions>
                    <exclusion>
                        <groupId>org.apache.httpcomponents</groupId>
                        <artifactId>httpcore</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

        ❹ 如果不是maven环境,只能人为一个个的jar包去排除,祝您好运!!!

  • 相关阅读:
    MQ系列12:如何保证消息顺序性
    NPM 与 XUI 共存!Nginx Proxy Manager 搭配 X-UI 实现 Vless+WS+TLS 教程!
    无涯教程-JavaScript - EVEN函数
    基于JavaWeb的汽车销售管理系统
    刘畊宏男孩女孩看过来!运动数据分析挖掘!⛵
    如何在idea中创建一个SpringBoot项目(超详细教学)
    Docker容器只有JRE没有JDK使用Jattach导出内存快照
    python列表
    目标检测算法——YOLOV6
    高云FPGA系列教程(8):ARM串口数据接收(中断和轮询方式)
  • 原文地址:https://blog.csdn.net/querydata_boke/article/details/125425474