实战 - Spring boot 整合Hive :java.lang.NoSuchMethodError

使用Spring boot整合Hive,在启动Spring boot项目时,报出异常:

java.lang.NoSuchMethodError: org.eclipse.jetty.servlet.ServletMapping.setDefault(Z)V

经过排查,是maven的包冲突引起的,具体做法,排除:jetty-all、hive-shims依赖包。对应的pom配置如下:

    <dependency>
            <groupId>org.apache.hive</groupId>
            <artifactId>hive-jdbc</
2025/08/01 10:00:55 - 执行SQL脚本.0 - ERROR (version 9.4.0.0-343, build 0.0 from 2022-11-08 07.50.27 by buildguy) : 错误初始化步骤[执行SQL脚本] 2025/08/01 10:00:55 - 执行SQL脚本.0 - ERROR (version 9.4.0.0-343, build 0.0 from 2022-11-08 07.50.27 by buildguy) : java.lang.NoSuchMethodError: com.ctc.wstx.io.StreamBootstrapper.getInstance(Ljava/lang/String;Lcom/ctc/wstx/io/SystemId;Ljava/io/InputStream;)Lcom/ctc/wstx/io/StreamBootstrapper; 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.parse(Configuration.java:3079) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.parse(Configuration.java:3062) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.getStreamReader(Configuration.java:3158) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.loadResource(Configuration.java:3116) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.loadResources(Configuration.java:3089) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.loadProps(Configuration.java:2967) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.getProps(Configuration.java:2949) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.get(Configuration.java:1267) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.getTrimmed(Configuration.java:1321) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.conf.Configuration.getInt(Configuration.java:1547) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.fs.FileSystem$Cache.<init>(FileSystem.java:3658) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.fs.FileSystem.<clinit>(FileSystem.java:205) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.hive.conf.valcoersion.JavaIOTmpdirVariableCoercion.<clinit>(JavaIOTmpdirVariableCoercion.java:37) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.hive.conf.SystemVariables.<clinit>(SystemVariables.java:37) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.hive.conf.HiveConf$ConfVars.<init>(HiveConf.java:5830) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.hive.conf.HiveConf$ConfVars.<init>(HiveConf.java:5811) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hadoop.hive.conf.HiveConf$ConfVars.<clinit>(HiveConf.java:484) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hive.jdbc.Utils$JdbcConnectionParams.<clinit>(Utils.java:220) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hive.jdbc.Utils.extractURLComponents(Utils.java:464) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hive.jdbc.Utils.parseURL(Utils.java:445) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:296) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:284) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:94) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at java.sql.DriverManager.getConnection(DriverManager.java:664) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at java.sql.DriverManager.getConnection(DriverManager.java:208) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.pentaho.di.core.database.Database.connectUsingClass(Database.java:589) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.pentaho.di.core.database.Database.normalConnect(Database.java:481) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.pentaho.di.core.database.Database.connect(Database.java:389) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.pentaho.di.core.database.Database.connect(Database.java:360) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.pentaho.di.trans.steps.sql.ExecSQL.init(ExecSQL.java:297) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at org.pentaho.di.trans.step.StepInitThread.run(StepInitThread.java:69) 2025/08/01 10:00:55 - 执行SQL脚本.0 - at java.lang.Thread.run(Thread.java:748) 2025/08/01 10:00:55 - 转换 1 - ERROR (version 9.4.0.0-343, build 0.0 from 2022-11-08 07.50.27 by buildguy) : 步骤 [执行SQL脚本.0] 初始化失败!
08-02
D:\Java\jdk-1.8\bin\java.exe -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.jmx.enabled=true -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true "-javaagent:D:\Maven\IntelliJ IDEA 2022.1.3\lib\idea_rt.jar=65200:D:\Maven\IntelliJ IDEA 2022.1.3\bin" -Dfile.encoding=UTF-8 -classpath D:\Java\jdk-1.8\jre\lib\charsets.jar;D:\Java\jdk-1.8\jre\lib\deploy.jar;D:\Java\jdk-1.8\jre\lib\ext\access-bridge-64.jar;D:\Java\jdk-1.8\jre\lib\ext\cldrdata.jar;D:\Java\jdk-1.8\jre\lib\ext\dnsns.jar;D:\Java\jdk-1.8\jre\lib\ext\jaccess.jar;D:\Java\jdk-1.8\jre\lib\ext\jfxrt.jar;D:\Java\jdk-1.8\jre\lib\ext\localedata.jar;D:\Java\jdk-1.8\jre\lib\ext\nashorn.jar;D:\Java\jdk-1.8\jre\lib\ext\sunec.jar;D:\Java\jdk-1.8\jre\lib\ext\sunjce_provider.jar;D:\Java\jdk-1.8\jre\lib\ext\sunmscapi.jar;D:\Java\jdk-1.8\jre\lib\ext\sunpkcs11.jar;D:\Java\jdk-1.8\jre\lib\ext\zipfs.jar;D:\Java\jdk-1.8\jre\lib\javaws.jar;D:\Java\jdk-1.8\jre\lib\jce.jar;D:\Java\jdk-1.8\jre\lib\jfr.jar;D:\Java\jdk-1.8\jre\lib\jfxswt.jar;D:\Java\jdk-1.8\jre\lib\jsse.jar;D:\Java\jdk-1.8\jre\lib\management-agent.jar;D:\Java\jdk-1.8\jre\lib\plugin.jar;D:\Java\jdk-1.8\jre\lib\resources.jar;D:\Java\jdk-1.8\jre\lib\rt.jar;D:\Maven\ideaProject\Hive\ifs-hive-application\target\classes;D:\Maven\ideaProject\Hive\ifs-hive\target\classes;D:\Maven\repository\org\springframework\boot\spring-boot-starter-mail\2.7.18\spring-boot-starter-mail-2.7.18.jar;D:\Maven\repository\org\springframework\spring-context-support\5.3.31\spring-context-support-5.3.31.jar;D:\Maven\repository\com\sun\mail\jakarta.mail\1.6.7\jakarta.mail-1.6.7.jar;D:\Maven\repository\com\sun\activation\jakarta.activation\1.2.2\jakarta.activation-1.2.2.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-amqp\2.7.18\spring-boot-starter-amqp-2.7.18.jar;D:\Maven\repository\org\springframework\spring-messaging\5.3.31\spring-messaging-5.3.31.jar;D:\Maven\repository\org\springframework\amqp\spring-rabbit\2.4.17\spring-rabbit-2.4.17.jar;D:\Maven\repository\org\springframework\amqp\spring-amqp\2.4.17\spring-amqp-2.4.17.jar;D:\Maven\repository\org\springframework\retry\spring-retry\1.3.4\spring-retry-1.3.4.jar;D:\Maven\repository\com\rabbitmq\amqp-client\5.14.3\amqp-client-5.14.3.jar;D:\Maven\repository\org\springframework\spring-tx\5.3.31\spring-tx-5.3.31.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-data-jpa\2.7.18\spring-boot-starter-data-jpa-2.7.18.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-aop\2.7.18\spring-boot-starter-aop-2.7.18.jar;D:\Maven\repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;D:\Maven\repository\jakarta\transaction\jakarta.transaction-api\1.3.3\jakarta.transaction-api-1.3.3.jar;D:\Maven\repository\jakarta\persistence\jakarta.persistence-api\2.2.3\jakarta.persistence-api-2.2.3.jar;D:\Maven\repository\org\hibernate\hibernate-core\5.6.15.Final\hibernate-core-5.6.15.Final.jar;D:\Maven\repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;D:\Maven\repository\antlr\antlr\2.7.7\antlr-2.7.7.jar;D:\Maven\repository\org\jboss\jandex\2.4.2.Final\jandex-2.4.2.Final.jar;D:\Maven\repository\org\hibernate\common\hibernate-commons-annotations\5.1.2.Final\hibernate-commons-annotations-5.1.2.Final.jar;D:\Maven\repository\org\glassfish\jaxb\jaxb-runtime\2.3.9\jaxb-runtime-2.3.9.jar;D:\Maven\repository\org\glassfish\jaxb\txw2\2.3.9\txw2-2.3.9.jar;D:\Maven\repository\com\sun\istack\istack-commons-runtime\3.0.12\istack-commons-runtime-3.0.12.jar;D:\Maven\repository\org\springframework\data\spring-data-jpa\2.7.18\spring-data-jpa-2.7.18.jar;D:\Maven\repository\org\springframework\data\spring-data-commons\2.7.18\spring-data-commons-2.7.18.jar;D:\Maven\repository\org\springframework\spring-orm\5.3.31\spring-orm-5.3.31.jar;D:\Maven\repository\org\springframework\spring-aspects\5.3.31\spring-aspects-5.3.31.jar;D:\Maven\repository\com\alibaba\druid-spring-boot-starter\1.2.6\druid-spring-boot-starter-1.2.6.jar;D:\Maven\repository\com\alibaba\druid\1.2.6\druid-1.2.6.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-data-redis\2.7.18\spring-boot-starter-data-redis-2.7.18.jar;D:\Maven\repository\org\springframework\data\spring-data-redis\2.7.18\spring-data-redis-2.7.18.jar;D:\Maven\repository\org\springframework\data\spring-data-keyvalue\2.7.18\spring-data-keyvalue-2.7.18.jar;D:\Maven\repository\org\springframework\spring-oxm\5.3.31\spring-oxm-5.3.31.jar;D:\Maven\repository\io\lettuce\lettuce-core\6.1.10.RELEASE\lettuce-core-6.1.10.RELEASE.jar;D:\Maven\repository\io\netty\netty-common\4.1.101.Final\netty-common-4.1.101.Final.jar;D:\Maven\repository\io\netty\netty-handler\4.1.101.Final\netty-handler-4.1.101.Final.jar;D:\Maven\repository\io\netty\netty-resolver\4.1.101.Final\netty-resolver-4.1.101.Final.jar;D:\Maven\repository\io\netty\netty-buffer\4.1.101.Final\netty-buffer-4.1.101.Final.jar;D:\Maven\repository\io\netty\netty-transport-native-unix-common\4.1.101.Final\netty-transport-native-unix-common-4.1.101.Final.jar;D:\Maven\repository\io\netty\netty-codec\4.1.101.Final\netty-codec-4.1.101.Final.jar;D:\Maven\repository\io\netty\netty-transport\4.1.101.Final\netty-transport-4.1.101.Final.jar;D:\Maven\repository\io\projectreactor\reactor-core\3.4.34\reactor-core-3.4.34.jar;D:\Maven\repository\org\reactivestreams\reactive-streams\1.0.4\reactive-streams-1.0.4.jar;D:\Maven\repository\com\kingee\sso\kingee-sso\1\kingee-sso-1.jar;D:\Maven\repository\com\bip\bip-api\1.0\bip-api-1.0.jar;D:\Maven\repository\com\kingdell\hr\kingdell-hr\1\kingdell-hr-1.jar;D:\Maven\repository\cn\afterturn\easypoi-annotation\4.1.0\easypoi-annotation-4.1.0.jar;D:\Maven\repository\cn\afterturn\easypoi-base\4.1.0\easypoi-base-4.1.0.jar;D:\Maven\repository\ognl\ognl\3.2.6\ognl-3.2.6.jar;D:\Maven\repository\org\javassist\javassist\3.20.0-GA\javassist-3.20.0-GA.jar;D:\Maven\repository\javax\validation\validation-api\2.0.1.Final\validation-api-2.0.1.Final.jar;D:\Maven\repository\com\google\code\gson\gson\2.9.1\gson-2.9.1.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-jdbc\2.7.18\spring-boot-starter-jdbc-2.7.18.jar;D:\Maven\repository\com\zaxxer\HikariCP\4.0.3\HikariCP-4.0.3.jar;D:\Maven\repository\org\springframework\spring-jdbc\5.3.31\spring-jdbc-5.3.31.jar;D:\Maven\repository\com\jcraft\jsch\0.1.55\jsch-0.1.55.jar;D:\Maven\repository\com\hy\base\hy-common\9.0-SNAPSHOT\hy-common-9.0-20250903.082902-9.jar;D:\Maven\repository\io\springfox\springfox-swagger2\2.9.2\springfox-swagger2-2.9.2.jar;D:\Maven\repository\io\swagger\swagger-annotations\1.5.22\swagger-annotations-1.5.22.jar;D:\Maven\repository\io\swagger\swagger-models\1.5.22\swagger-models-1.5.22.jar;D:\Maven\repository\com\fasterxml\jackson\core\jackson-annotations\2.13.5\jackson-annotations-2.13.5.jar;D:\Maven\repository\io\springfox\springfox-spi\2.9.2\springfox-spi-2.9.2.jar;D:\Maven\repository\io\springfox\springfox-core\2.9.2\springfox-core-2.9.2.jar;D:\Maven\repository\io\springfox\springfox-schema\2.9.2\springfox-schema-2.9.2.jar;D:\Maven\repository\io\springfox\springfox-swagger-common\2.9.2\springfox-swagger-common-2.9.2.jar;D:\Maven\repository\io\springfox\springfox-spring-web\2.9.2\springfox-spring-web-2.9.2.jar;D:\Maven\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;D:\Maven\repository\org\springframework\plugin\spring-plugin-core\1.2.0.RELEASE\spring-plugin-core-1.2.0.RELEASE.jar;D:\Maven\repository\org\springframework\plugin\spring-plugin-metadata\1.2.0.RELEASE\spring-plugin-metadata-1.2.0.RELEASE.jar;D:\Maven\repository\org\mapstruct\mapstruct\1.2.0.Final\mapstruct-1.2.0.Final.jar;D:\Maven\repository\com\mysql\mysql-connector-j\8.0.33\mysql-connector-j-8.0.33.jar;D:\Maven\repository\org\springframework\boot\spring-boot-actuator\2.7.18\spring-boot-actuator-2.7.18.jar;D:\Maven\repository\org\springframework\boot\spring-boot-actuator-autoconfigure\2.7.18\spring-boot-actuator-autoconfigure-2.7.18.jar;D:\Maven\repository\com\fasterxml\jackson\core\jackson-databind\2.13.5\jackson-databind-2.13.5.jar;D:\Maven\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.13.5\jackson-datatype-jsr310-2.13.5.jar;D:\Maven\repository\org\apache\poi\poi\4.0.0\poi-4.0.0.jar;D:\Maven\repository\commons-codec\commons-codec\1.15\commons-codec-1.15.jar;D:\Maven\repository\org\apache\commons\commons-collections4\4.4\commons-collections4-4.4.jar;D:\Maven\repository\org\apache\poi\poi-scratchpad\4.0.0\poi-scratchpad-4.0.0.jar;D:\Maven\repository\com\monitorjbl\xlsx-streamer\2.1.0\xlsx-streamer-2.1.0.jar;D:\Maven\repository\org\apache\poi\poi-ooxml-schemas\4.0.0\poi-ooxml-schemas-4.0.0.jar;D:\Maven\repository\org\apache\xmlbeans\xmlbeans\3.0.1\xmlbeans-3.0.1.jar;D:\Maven\repository\com\rackspace\apache\xerces2-xsd11\2.11.1\xerces2-xsd11-2.11.1.jar;D:\Maven\repository\com\rackspace\eclipse\webtools\sourceediting\org.eclipse.wst.xml.xpath2.processor\2.1.100\org.eclipse.wst.xml.xpath2.processor-2.1.100.jar;D:\Maven\repository\edu\princeton\cup\java-cup\10k\java-cup-10k.jar;D:\Maven\repository\com\ibm\icu\icu4j\4.6\icu4j-4.6.jar;D:\Maven\repository\xml-resolver\xml-resolver\1.2\xml-resolver-1.2.jar;D:\Maven\repository\xml-apis\xml-apis\1.4.01\xml-apis-1.4.01.jar;D:\Maven\repository\org\slf4j\slf4j-api\1.7.36\slf4j-api-1.7.36.jar;D:\Maven\repository\org\apache\poi\poi-ooxml\4.0.0\poi-ooxml-4.0.0.jar;D:\Maven\repository\org\apache\commons\commons-compress\1.18\commons-compress-1.18.jar;D:\Maven\repository\com\github\virtuald\curvesapi\1.04\curvesapi-1.04.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-web\2.7.18\spring-boot-starter-web-2.7.18.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter\2.7.18\spring-boot-starter-2.7.18.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-logging\2.7.18\spring-boot-starter-logging-2.7.18.jar;D:\Maven\repository\ch\qos\logback\logback-classic\1.2.12\logback-classic-1.2.12.jar;D:\Maven\repository\ch\qos\logback\logback-core\1.2.12\logback-core-1.2.12.jar;D:\Maven\repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.2\log4j-to-slf4j-2.17.2.jar;D:\Maven\repository\org\apache\logging\log4j\log4j-api\2.17.2\log4j-api-2.17.2.jar;D:\Maven\repository\org\slf4j\jul-to-slf4j\1.7.36\jul-to-slf4j-1.7.36.jar;D:\Maven\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;D:\Maven\repository\org\yaml\snakeyaml\1.30\snakeyaml-1.30.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-json\2.7.18\spring-boot-starter-json-2.7.18.jar;D:\Maven\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.13.5\jackson-datatype-jdk8-2.13.5.jar;D:\Maven\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.13.5\jackson-module-parameter-names-2.13.5.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-tomcat\2.7.18\spring-boot-starter-tomcat-2.7.18.jar;D:\Maven\repository\org\apache\tomcat\embed\tomcat-embed-core\9.0.83\tomcat-embed-core-9.0.83.jar;D:\Maven\repository\org\apache\tomcat\embed\tomcat-embed-el\9.0.83\tomcat-embed-el-9.0.83.jar;D:\Maven\repository\org\apache\tomcat\embed\tomcat-embed-websocket\9.0.83\tomcat-embed-websocket-9.0.83.jar;D:\Maven\repository\org\springframework\spring-web\5.3.31\spring-web-5.3.31.jar;D:\Maven\repository\org\springframework\spring-beans\5.3.31\spring-beans-5.3.31.jar;D:\Maven\repository\org\springframework\spring-webmvc\5.3.31\spring-webmvc-5.3.31.jar;D:\Maven\repository\org\springframework\spring-aop\5.3.31\spring-aop-5.3.31.jar;D:\Maven\repository\org\springframework\spring-context\5.3.31\spring-context-5.3.31.jar;D:\Maven\repository\org\springframework\spring-expression\5.3.31\spring-expression-5.3.31.jar;D:\Maven\repository\org\springframework\cloud\spring-cloud-starter-bootstrap\3.1.1\spring-cloud-starter-bootstrap-3.1.1.jar;D:\Maven\repository\org\springframework\cloud\spring-cloud-starter\3.1.1\spring-cloud-starter-3.1.1.jar;D:\Maven\repository\org\springframework\security\spring-security-rsa\1.0.10.RELEASE\spring-security-rsa-1.0.10.RELEASE.jar;D:\Maven\repository\org\bouncycastle\bcpkix-jdk15on\1.68\bcpkix-jdk15on-1.68.jar;D:\Maven\repository\org\bouncycastle\bcprov-jdk15on\1.68\bcprov-jdk15on-1.68.jar;D:\Maven\repository\org\springframework\boot\spring-boot-starter-actuator\2.7.18\spring-boot-starter-actuator-2.7.18.jar;D:\Maven\repository\io\micrometer\micrometer-core\1.9.17\micrometer-core-1.9.17.jar;D:\Maven\repository\org\hdrhistogram\HdrHistogram\2.1.12\HdrHistogram-2.1.12.jar;D:\Maven\repository\org\latencyutils\LatencyUtils\2.0.3\LatencyUtils-2.0.3.jar;D:\Maven\repository\com\google\guava\guava\20.0\guava-20.0.jar;D:\Maven\repository\com\alibaba\cloud\spring-cloud-starter-alibaba-nacos-discovery\2021.0.1.0\spring-cloud-starter-alibaba-nacos-discovery-2021.0.1.0.jar;D:\Maven\repository\com\alibaba\cloud\spring-cloud-alibaba-commons\2021.0.1.0\spring-cloud-alibaba-commons-2021.0.1.0.jar;D:\Maven\repository\com\alibaba\nacos\nacos-client\1.4.2\nacos-client-1.4.2.jar;D:\Maven\repository\com\alibaba\nacos\nacos-common\1.4.2\nacos-common-1.4.2.jar;D:\Maven\repository\commons-io\commons-io\2.7\commons-io-2.7.jar;D:\Maven\repository\org\apache\httpcomponents\httpasyncclient\4.1.5\httpasyncclient-4.1.5.jar;D:\Maven\repository\org\apache\httpcomponents\httpcore-nio\4.4.16\httpcore-nio-4.4.16.jar;D:\Maven\repository\com\alibaba\nacos\nacos-api\1.4.2\nacos-api-1.4.2.jar;D:\Maven\repository\com\fasterxml\jackson\core\jackson-core\2.13.5\jackson-core-2.13.5.jar;D:\Maven\repository\io\prometheus\simpleclient\0.15.0\simpleclient-0.15.0.jar;D:\Maven\repository\io\prometheus\simpleclient_tracer_otel\0.15.0\simpleclient_tracer_otel-0.15.0.jar;D:\Maven\repository\io\prometheus\simpleclient_tracer_common\0.15.0\simpleclient_tracer_common-0.15.0.jar;D:\Maven\repository\io\prometheus\simpleclient_tracer_otel_agent\0.15.0\simpleclient_tracer_otel_agent-0.15.0.jar;D:\Maven\repository\com\alibaba\spring\spring-context-support\1.0.11\spring-context-support-1.0.11.jar;D:\Maven\repository\org\springframework\cloud\spring-cloud-commons\3.1.1\spring-cloud-commons-3.1.1.jar;D:\Maven\repository\org\springframework\security\spring-security-crypto\5.7.11\spring-security-crypto-5.7.11.jar;D:\Maven\repository\org\springframework\cloud\spring-cloud-context\3.1.1\spring-cloud-context-3.1.1.jar;D:\Maven\repository\com\alibaba\cloud\spring-cloud-starter-alibaba-nacos-config\2021.0.1.0\spring-cloud-starter-alibaba-nacos-config-2021.0.1.0.jar;D:\Maven\repository\org\apache\commons\commons-pool2\2.11.1\commons-pool2-2.11.1.jar;D:\Maven\repository\org\apache\hive\hive-jdbc\2.1.1-cdh6.3.2\hive-jdbc-2.1.1-cdh6.3.2.jar;D:\Maven\repository\org\apache\hive\hive-service-rpc\2.1.1-cdh6.3.2\hive-service-rpc-2.1.1-cdh6.3.2.jar;D:\Maven\repository\org\apache\thrift\libthrift\0.9.3\libthrift-0.9.3.jar;D:\Maven\repository\org\apache\httpcomponents\httpcore\4.4.16\httpcore-4.4.16.jar;D:\Maven\repository\org\springframework\boot\spring-boot-devtools\2.7.18\spring-boot-devtools-2.7.18.jar;D:\Maven\repository\org\springframework\boot\spring-boot\2.7.18\spring-boot-2.7.18.jar;D:\Maven\repository\org\springframework\boot\spring-boot-autoconfigure\2.7.18\spring-boot-autoconfigure-2.7.18.jar;D:\Maven\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.3\jakarta.xml.bind-api-2.3.3.jar;D:\Maven\repository\jakarta\activation\jakarta.activation-api\1.2.2\jakarta.activation-api-1.2.2.jar;D:\Maven\repository\net\bytebuddy\byte-buddy\1.12.23\byte-buddy-1.12.23.jar;D:\Maven\repository\org\springframework\spring-core\5.3.31\spring-core-5.3.31.jar;D:\Maven\repository\org\springframework\spring-jcl\5.3.31\spring-jcl-5.3.31.jar;D:\Maven\repository\com\alibaba\fastjson\1.2.83\fastjson-1.2.83.jar;D:\Maven\repository\com\belerweb\pinyin4j\2.5.1\pinyin4j-2.5.1.jar;D:\Maven\repository\org\apache\httpcomponents\httpclient\4.5.13\httpclient-4.5.13.jar;D:\Maven\repository\commons-beanutils\commons-beanutils\1.9.3\commons-beanutils-1.9.3.jar;D:\Maven\repository\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;D:\Maven\repository\commons-collections\commons-collections\3.2.2\commons-collections-3.2.2.jar;D:\Maven\repository\org\apache\commons\commons-lang3\3.9\commons-lang3-3.9.jar;D:\Maven\repository\org\projectlombok\lombok\1.18.30\lombok-1.18.30.jar;D:\Maven\repository\org\springframework\cloud\spring-cloud-starter-openfeign\3.1.1\spring-cloud-starter-openfeign-3.1.1.jar;D:\Maven\repository\org\springframework\cloud\spring-cloud-openfeign-core\3.1.1\spring-cloud-openfeign-core-3.1.1.jar;D:\Maven\repository\io\github\openfeign\form\feign-form-spring\3.8.0\feign-form-spring-3.8.0.jar;D:\Maven\repository\io\github\openfeign\form\feign-form\3.8.0\feign-form-3.8.0.jar;D:\Maven\repository\commons-fileupload\commons-fileupload\1.4\commons-fileupload-1.4.jar;D:\Maven\repository\io\github\openfeign\feign-core\11.8\feign-core-11.8.jar;D:\Maven\repository\io\github\openfeign\feign-slf4j\11.8\feign-slf4j-11.8.jar com.hy.ifs.hive.HiveApplication 10:11:51.231 [Thread-1] DEBUG org.springframework.boot.devtools.restart.classloader.RestartClassLoader - Created RestartClassLoader org.springframework.boot.devtools.restart.classloader.RestartClassLoader@71809a 2025-09-17 10:11:52.061 INFO 5356 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.7.18) 2025-09-17 10:11:55.819 WARN 5356 --- [ restartedMain] c.a.c.n.c.NacosPropertySourceBuilder : Ignore the empty nacos configuration and get it based on dataId[null.properties] & group[DEFAULT_GROUP] 2025-09-17 10:11:55.819 INFO 5356 --- [ restartedMain] b.c.PropertySourceBootstrapConfiguration : Located property source: [BootstrapPropertySource {name='bootstrapProperties-null.properties,DEFAULT_GROUP'}] 2025-09-17 10:11:55.823 INFO 5356 --- [ restartedMain] com.hy.ifs.hive.HiveApplication : No active profile set, falling back to 1 default profile: "default" 2025-09-17 10:11:56.471 INFO 5356 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode 2025-09-17 10:11:56.471 INFO 5356 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2025-09-17 10:11:56.525 INFO 5356 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 46 ms. Found 3 JPA repository interfaces. 2025-09-17 10:11:56.533 INFO 5356 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode 2025-09-17 10:11:56.534 INFO 5356 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode. 2025-09-17 10:11:56.545 INFO 5356 --- [ restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.hy.ifs.hive.repositorites.CustomerRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository 2025-09-17 10:11:56.545 INFO 5356 --- [ restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.hy.ifs.hive.repositorites.DirectionCodeRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository 2025-09-17 10:11:56.545 INFO 5356 --- [ restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.hy.ifs.hive.repositorites.DirectionRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository 2025-09-17 10:11:56.545 INFO 5356 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 5 ms. Found 0 Redis repository interfaces. 2025-09-17 10:11:56.691 INFO 5356 --- [ restartedMain] o.s.cloud.context.scope.GenericScope : BeanFactory id=3c4e86c4-1dd9-3a09-904c-7500e21d04b4 2025-09-17 10:11:57.207 INFO 5356 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http) 2025-09-17 10:11:57.207 INFO 5356 --- [ restartedMain] o.a.catalina.core.AprLifecycleListener : Loaded Apache Tomcat Native library [1.3.1] using APR version [1.7.4]. 2025-09-17 10:11:57.207 INFO 5356 --- [ restartedMain] o.a.catalina.core.AprLifecycleListener : APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true], UDS [true]. 2025-09-17 10:11:57.208 INFO 5356 --- [ restartedMain] o.a.catalina.core.AprLifecycleListener : APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true] 2025-09-17 10:11:57.213 INFO 5356 --- [ restartedMain] o.a.catalina.core.AprLifecycleListener : OpenSSL successfully initialized [OpenSSL 3.0.14 4 Jun 2024] 2025-09-17 10:11:57.220 INFO 5356 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat] 2025-09-17 10:11:57.220 INFO 5356 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.83] 2025-09-17 10:11:57.375 INFO 5356 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext 2025-09-17 10:11:57.375 INFO 5356 --- [ restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1543 ms 2025-09-17 10:11:57.612 INFO 5356 --- [ restartedMain] org.apache.hive.jdbc.Utils : Supplied authorities: cdh50:10000 2025-09-17 10:11:57.613 INFO 5356 --- [ restartedMain] org.apache.hive.jdbc.Utils : Resolved authority: cdh50:10000 2025-09-17 10:11:57.614 ERROR 5356 --- [ restartedMain] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} init error java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:175) ~[hive-jdbc-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2] at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:107) ~[hive-jdbc-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2] at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1657) ~[druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1723) ~[druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:919) [druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1393) [druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1389) [druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:100) [druid-1.2.6.jar:1.2.6] at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) [spring-jdbc-5.3.31.jar:5.3.31] at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) [spring-jdbc-5.3.31.jar:5.3.31] at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) [spring-jdbc-5.3.31.jar:5.3.31] at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:332) [spring-jdbc-5.3.31.jar:5.3.31] at org.springframework.boot.jdbc.EmbeddedDatabaseConnection.isEmbedded(EmbeddedDatabaseConnection.java:164) [spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateDefaultDdlAutoProvider.getDefaultDdlAuto(HibernateDefaultDdlAutoProvider.java:42) [spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration.lambda$getVendorProperties$1(HibernateJpaConfiguration.java:130) [spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateSettings.getDdlAuto(HibernateSettings.java:41) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateProperties.determineDdlAuto(HibernateProperties.java:143) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateProperties.getAdditionalProperties(HibernateProperties.java:103) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateProperties.determineHibernateProperties(HibernateProperties.java:95) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration.getVendorProperties(HibernateJpaConfiguration.java:131) [spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.entityManagerFactory(JpaBaseConfiguration.java:132) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_431] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_431] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_431] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_431] at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:648) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:633) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1168) ~[spring-context-5.3.31.jar:5.3.31] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:919) ~[spring-context-5.3.31.jar:5.3.31] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591) ~[spring-context-5.3.31.jar:5.3.31] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:732) ~[spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:409) ~[spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300) ~[spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1289) ~[spring-boot-2.7.18.jar:2.7.18] at com.hy.ifs.hive.HiveApplication.main(HiveApplication.java:11) ~[classes/:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_431] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_431] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_431] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_431] at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) ~[spring-boot-devtools-2.7.18.jar:2.7.18] Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.StringUtils at java.net.URLClassLoader.findClass(URLClassLoader.java:387) ~[na:1.8.0_431] at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[na:1.8.0_431] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:359) ~[na:1.8.0_431] at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[na:1.8.0_431] ... 51 common frames omitted 2025-09-17 10:11:57.615 WARN 5356 --- [ restartedMain] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean]: Factory method 'entityManagerFactory' threw exception; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils 2025-09-17 10:11:57.616 INFO 5356 --- [ restartedMain] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} closing ... 2025-09-17 10:11:57.616 INFO 5356 --- [ restartedMain] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} closed 2025-09-17 10:11:57.617 INFO 5356 --- [ restartedMain] o.apache.catalina.core.StandardService : Stopping service [Tomcat] 2025-09-17 10:11:57.630 INFO 5356 --- [ restartedMain] ConditionEvaluationReportLoggingListener : Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. 2025-09-17 10:11:57.656 ERROR 5356 --- [ restartedMain] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean]: Factory method 'entityManagerFactory' threw exception; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:633) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1168) ~[spring-context-5.3.31.jar:5.3.31] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:919) ~[spring-context-5.3.31.jar:5.3.31] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591) ~[spring-context-5.3.31.jar:5.3.31] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:732) [spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:409) [spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) [spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1300) [spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1289) [spring-boot-2.7.18.jar:2.7.18] at com.hy.ifs.hive.HiveApplication.main(HiveApplication.java:11) [classes/:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_431] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_431] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_431] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_431] at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) [spring-boot-devtools-2.7.18.jar:2.7.18] Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean]: Factory method 'entityManagerFactory' threw exception; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.31.jar:5.3.31] at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:648) ~[spring-beans-5.3.31.jar:5.3.31] ... 24 common frames omitted Caused by: java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:175) ~[hive-jdbc-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2] at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:107) ~[hive-jdbc-2.1.1-cdh6.3.2.jar:2.1.1-cdh6.3.2] at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1657) ~[druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1723) ~[druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:919) ~[druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1393) ~[druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1389) ~[druid-1.2.6.jar:1.2.6] at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:100) ~[druid-1.2.6.jar:1.2.6] at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:160) ~[spring-jdbc-5.3.31.jar:5.3.31] at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:118) ~[spring-jdbc-5.3.31.jar:5.3.31] at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:81) ~[spring-jdbc-5.3.31.jar:5.3.31] at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:332) ~[spring-jdbc-5.3.31.jar:5.3.31] at org.springframework.boot.jdbc.EmbeddedDatabaseConnection.isEmbedded(EmbeddedDatabaseConnection.java:164) ~[spring-boot-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateDefaultDdlAutoProvider.getDefaultDdlAuto(HibernateDefaultDdlAutoProvider.java:42) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration.lambda$getVendorProperties$1(HibernateJpaConfiguration.java:130) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateSettings.getDdlAuto(HibernateSettings.java:41) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateProperties.determineDdlAuto(HibernateProperties.java:143) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateProperties.getAdditionalProperties(HibernateProperties.java:103) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateProperties.determineHibernateProperties(HibernateProperties.java:95) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration.getVendorProperties(HibernateJpaConfiguration.java:131) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration.entityManagerFactory(JpaBaseConfiguration.java:132) ~[spring-boot-autoconfigure-2.7.18.jar:2.7.18] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_431] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_431] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_431] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_431] at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.31.jar:5.3.31] ... 25 common frames omitted Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.StringUtils at java.net.URLClassLoader.findClass(URLClassLoader.java:387) ~[na:1.8.0_431] at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[na:1.8.0_431] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:359) ~[na:1.8.0_431] at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[na:1.8.0_431] ... 51 common frames omitted 2025-09-17 10:11:57.660 WARN 5356 --- [ Thread-7] c.a.n.common.http.HttpClientBeanHolder : [HttpClientBeanHolder] Start destroying common HttpClient 进程已结束,退出代码0
最新发布
09-18
<think> 我们面对的问题是Spring Boot应用启动时出现`java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils`错误。这个错误表示在运行时找不到`org.apache.commons.lang.StringUtils`类。虽然错误信息中提到的类属于Apache Commons Lang库,但值得注意的是,Commons Lang有两个主要版本:2.x和3.x,它们的包名有所不同。 引用[1]中提到了一个编译时使用类路径的例子,但我们要解决的是运行时问题。在Spring Boot中,这类错误通常由以下原因引起: 1. 项目缺少Apache Commons Lang依赖 2. 项目依赖了Commons Lang 3.x,但代码中引用的却是Commons Lang 2.x的类(因为3.x的包名改为`org.apache.commons.lang3`) 3. 依赖冲突导致Commons Lang库未被正确引入 ### 解决方案 #### 1. **确认并添加正确的依赖** - **Commons Lang 2.x**:包名为`org.apache.commons.lang`,包含`StringUtils`类。 - **Commons Lang 3.x**:包名为`org.apache.commons.lang3`,同样包含`StringUtils`类,但包名不同。 如果代码中使用的包名是`org.apache.commons.lang`(没有3),则需要添加Commons Lang 2.x依赖: ```xml <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> <!-- 或最新2.x版本 --> </dependency> ``` 如果使用的是`org.apache.commons.lang3`,则添加3.x依赖: ```xml <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.12.0</version> <!-- 或更高版本 --> </dependency> ``` **注意**:Spring Boot的某些 starter 可能已经间接引入了 Commons Lang 3.x,因此需要检查实际代码中使用的包路径。 #### 2. **检查代码中的包导入** 在代码中检查所有导入`StringUtils`的语句,确保包名正确: - 使用2.x:`import org.apache.commons.lang.StringUtils;` - 使用3.x:`import org.apache.commons.lang3.StringUtils;` 如果代码中导入的是2.x的包,但项目中只有3.x的库,则会出现`NoClassDefFoundError`。此时有两种选择: - 修改代码,使用3.x的包名(推荐,因为2.x已停止更新) - 添加2.x依赖(如果无法修改代码) #### 3. **排除依赖冲突** 如果已经添加了依赖但仍然报错,可能是由于依赖冲突导致Commons Lang库未被正确加载。使用Maven或Gradle检查依赖树: **Maven**: ```bash mvn dependency:tree ``` 查找是否有多个版本的Commons Lang,或者是否有其他库排除了Commons Lang。 例如,若发现某个依赖排除了Commons Lang,可以尝试在项目中显式添加所需版本,或者排除该排除行为(如果可能)。 **Gradle**: ```bash gradle dependencies ``` 如果存在版本冲突,可以在`build.gradle`中强制指定版本: ```groovy configurations.all { resolutionStrategy { force 'commons-lang:commons-lang:2.6' // 或者 force 'org.apache.commons:commons-lang3:3.12.0' } } ``` #### 4. **清理并重新构建项目** 在修改依赖后,执行清理操作并重新构建项目: - Maven: `mvn clean install` - Gradle: `gradle clean build` 然后重新启动Spring Boot应用。 ### 附加说明 - **Spring Boot管理依赖版本**:如果项目继承了`spring-boot-starter-parent`,则默认管理的Commons Lang3版本可能较低。可以在`pom.xml`中覆盖版本: ```xml <properties> <commons-lang3.version>3.12.0</commons-lang3.version> </properties> ``` - **检查打包后的JAR**:确保最终生成的JAR(或WAR)文件中的`BOOT-INF/lib`目录下包含正确的Commons Lang JAR。可以使用以下命令检查: ```bash jar tf target/your-application.jar | grep 'commons-lang' ``` ### 验证 编写一个简单的测试类,在应用启动后检查`StringUtils`类是否存在: ```java import org.apache.commons.lang3.StringUtils; // 或 org.apache.commons.lang.StringUtils public class TestStringUtils { public static void main(String[] args) { if (StringUtils.isEmpty("")) { System.out.println("StringUtils is available!"); } } } ``` 通过以上步骤,应该能解决`NoClassDefFoundError: org/apache/commons/lang/StringUtils`错误。如果问题仍然存在,请检查运行时环境(如服务器类路径)是否有干扰。 §§相关问题§§ 1. 如何在 Spring Boot 应用中有效地管理第三方库的版本冲突? 2. 除了 Apache Commons Lang,还有哪些常用的 Java 工具库? 3. 如何避免在 Java 项目中因包名变化引起的 ClassNotFoundException 或 NoClassDefFoundError? </think> ### 解决 Spring Boot 启动报错:`java.lang.NoClassDefFoundError: org/apache/commons/lang/StringUtils` 此错误表明 Spring Boot 应用在运行时缺失 Apache Commons Lang 的 `StringUtils` 类。根本原因通常是**依赖缺失、版本冲突或包名变化**。以下是系统化的解决方案: --- ### 1. **添加正确版本的 Apache Commons Lang 依赖** #### 关键区分: - **Commons Lang 2.x**:包名为 `org.apache.commons.lang`(含 `StringUtils`) - **Commons Lang 3.x**:包名为 `org.apache.commons.lang3`(`StringUtils` 在 `lang3` 下) 根据代码中实际导入的包名添加依赖: ```xml <!-- 如果是 2.x 版本(旧项目常见) --> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency> <!-- 如果是 3.x 版本(推荐) --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.12.0</version> </dependency> ``` > **验证**:执行 `mvn dependency:tree | grep 'commons-lang'` 确认依赖已加载。 --- ### 2. **修正代码中的包导入** 检查所有使用 `StringUtils` 的 Java 文件: ```java // 错误导入(旧版 2.x 包名) import org.apache.commons.lang.StringUtils; // 正确导入(新版 3.x 包名) import org.apache.commons.lang3.StringUtils; ``` 若无法修改源码(如第三方库依赖旧版),需强制添加 `commons-lang:2.6` 依赖。 --- ### 3. **解决依赖冲突** 若已存在 Commons Lang 但依然报错,可能是版本冲突: ```bash # Maven 依赖树分析 mvn dependency:tree -Dincludes=commons-lang* # Gradle 依赖树分析 gradle dependencies | grep 'commons-lang' ``` 在 `pom.xml` 中排除冲突版本: ```xml <dependency> <groupId>com.conflicting.library</groupId> <artifactId>some-artifact</artifactId> <exclusions> <exclusion> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> </exclusion> </exclusions> </dependency> ``` --- ### 4. **检查 Spring Boot 的依赖管理** 若继承 `spring-boot-starter-parent`,默认管理的 `commons-lang3` 版本可能过低: ```xml <!-- 在 pom.xml 中覆盖版本 --> <properties> <commons-lang3.version>3.12.0</commons-lang3.version> </properties> ``` --- ### 5. **验证打包结果** 检查最终 JAR 文件是否包含 Commons Lang: ```bash jar tf target/your-app.jar | grep 'commons-lang' ``` 若缺失,检查 Maven 插件配置: ```xml <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <includes> <include> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </include> </includes> </configuration> </plugin> </plugins> </build> ``` --- ### 验证修复 添加测试代码验证类可用性: ```java public class ValidateStringUtils { public static void main(String[] args) { try { Class.forName("org.apache.commons.lang3.StringUtils"); System.out.println("StringUtils loaded successfully!"); } catch (ClassNotFoundException e) { e.printStackTrace(); } } } ``` --- ### 常见陷阱排查 1. **作用域错误**:确保依赖不是 `provided`(除非服务器已自带) 2. **缓存问题**:清理构建缓存后重启 ```bash mvn clean install && java -jar target/your-app.jar ``` 3. **多模块项目**:在启动模块显式添加依赖 通过以上步骤,95% 的 `NoClassDefFoundError: StringUtils` 错误可被解决。若问题仍存,需检查是否有自定义类加载器干扰加载过程[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值