试图调用不存在的方法 - Springboot: Maven

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

所以我的项目有点问题,在尝试启动 Spring Boot 应用程序时出现以下错误:

An attempt was made to call a method that does not exist. The attempt was made from the following location:

    com.google.cloud.logging.v2.stub.LoggingServiceV2StubSettings$Builder.createDefault(LoggingServiceV2StubSettings.java:634)

The following method did not exist:

    'com.google.api.gax.rpc.StubSettings$Builder com.google.cloud.logging.v2.stub.LoggingServiceV2StubSettings$Builder.setMtlsEndpoint(java.lang.String)'

The method's class, com.google.cloud.logging.v2.stub.LoggingServiceV2StubSettings$Builder, is available from the following locations:

    jar:file:/home/mantes/.m2/repository/com/google/cloud/google-cloud-logging/2.3.2/google-cloud-logging-2.3.2.jar!/com/google/cloud/logging/v2/stub/LoggingServiceV2StubSettings$Builder.class

The class hierarchy was loaded from the following locations:

    com.google.cloud.logging.v2.stub.LoggingServiceV2StubSettings.Builder: file:/home/mantes/.m2/repository/com/google/cloud/google-cloud-logging/2.3.2/google-cloud-logging-2.3.2.jar
    com.google.api.gax.rpc.StubSettings.Builder: file:/home/sebastian/.m2/repository/com/google/api/gax/1.54.0/gax-1.54.0.jar

Action:

Correct the classpath of your application so that it contains a single, compatible version of com.google.cloud.logging.v2.stub.LoggingServiceV2StubSettings$Builder

现在,我在网上看了一些东西,这似乎是与以下任何一个相关的问题:

  • 库版本之间的不兼容性。
  • 不必要的库重复。

在这两种情况下,它都与 maven/pom 相关,我尝试删除 .m2 文件,但没有真正改变,也试图找到是否有一些重复的库并排除我认为可能导致问题的内容,但同样,没有,我也已经将这个项目构建到一个 docker 镜像中,并且在运行它之后问题仍然出现(没想到它会解决问题但至少可以提示我为什么会遇到这个问题)。所以,我有点不知所措,不确定如何进行

POM中的重要部分:

<properties>
        <java.version>17</java.version>
        <google-cloud.version>19.2.1</google-cloud.version>
</properties>
<dependencies> 
        <dependency>
            <groupId>com.google.cloud</groupId>
            <artifactId>google-cloud-logging</artifactId>
            <version>2.3.2</version>
        </dependency>
        <dependency>
            <groupId>com.google.cloud</groupId>
            <artifactId>google-cloud-storage</artifactId>
        </dependency>
</dependencies>
     <dependencyManagement>
        <dependencies>          
            <dependency>
                <groupId>com.google.cloud</groupId>
                <artifactId>libraries-bom</artifactId>
                <version>${google-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

java spring-boot maven pom.xml google-cloud-logging
© www.soinside.com 2019 - 2024. All rights reserved.