java.lang.NoSuchFieldError:连接到 kafka 时出现 CLIENT_ENDPOINT 错误

问题描述 投票:0回答:2

我在连接到 kafka 时遇到错误..下面是一些错误行 这是一个 Spring Boot 应用程序

2024-02-21T14:02:03.419Z INFO 1 --- [customer-master-service] [ main] [ ] o.a.k.clients.consumer.KafkaConsumer : [Consumer clientId=consumer-customer-master-service-kafka-group-6, groupId=customer-master-service-kafka-group] Subscribed to topic(s): CAS_CUSTOMER_UPDATE
2024-02-21T14:02:03.461Z INFO 1 --- [customer-master-service] [ main] [ ] tomerMasterServiceApplicationApplication : Started CustomerMasterServiceApplicationApplication in 22.136 seconds (process running for 23.454)
2024-02-21T14:02:04.282Z ERROR 1 --- [customer-master-service] [ntainer#0-0-C-1] [ ] o.s.k.l.KafkaMessageListenerContainer : Stopping container due to an Error
2024-02-21T14:02:04.285170248Z java.lang.NoSuchFieldError: CLIENT_ENDPOINT
at com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.executeAssumeRoleWithWebIdentity(AWSSecurityTokenServiceClient.java:994) ~[aws-java-sdk-sts-1.11.986.jar!/:na] 2024-02-21T14:02:04.285184208Z at com.amazonaws.services.securitytoken.AWSSecurityTokenServiceClient.assumeRoleWithWebIdentity(AWSSecurityTokenServiceClient.java:976) ~[aws-java-sdk-sts-1.11.986.jar!/:na]
at com.amazonaws.auth.STSAssumeRoleWithWebIdentitySessionCredentialsProvider.newSession(STSAssumeRoleWithWebIdentitySessionCredentialsProvider.java:149) ~[aws-java-sdk-sts-1.11.986.jar!/:na]
at com.amazonaws.auth.STSAssumeRoleWithWebIdentitySessionCredentialsProvider.access$000(STSAssumeRoleWithWebIdentitySessionCredentialsProvider.java:40) ~[aws-java-sdk-sts-1.11.986.jar!/:na]
at com.amazonaws.auth.STSAssumeRoleWithWebIdentitySessionCredentialsProvider$1.call(STSAssumeRoleWithWebIdentitySessionCredentialsProvider.java:65) ~[aws-java-sdk-sts-1.11.986.jar!/:na]```
amazon-web-services spring-boot spring-mvc spring-kafka
2个回答
0
投票

通过添加依赖解决,缺少sts依赖

<dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk-sts</artifactId>
    <version>1.12.662</version>
</dependency>

0
投票

它的老问题和已知问题是 sdk core 和 sqs 模块的版本不匹配,您可能需要通过编辑 pom.xml 文件依赖关系树来手动匹配这些版本,理想情况下 SDK 模块应该全部位于同一版本中。您需要匹配两个版本才能正常工作

<!-- https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-bom -->
<dependencyManagement>
    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk-bom</artifactId>
        <version>1.12.662</version>
        <type>pom</type>
        <scope>import</scope>
    </dependency>
</dependencyManagement>
<dependencies>
    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk-sts</artifactId>
        <version>1.12.662</version>
    </dependency>
</dependencies>

用它更新 pom.xml 应该可以工作并解决依赖关系

© www.soinside.com 2019 - 2024. All rights reserved.