我们最近将 Spring Boot 版本从 2.7.0 升级到 3.2.2 并将 Java 版本升级到 21 但升级 Spring 版本后,Dropbox API 开始无法在
获取客户端详细信息ApiClient apiClient = Configuration.getDefaultApiClient();
错误
jakarta.servlet.ServletException: Handler dispatch failed: java.lang.LinkageError: ClassCastException: attempting to castjar:file:/.m2/repository/org/jboss/spec/javax/ws/rs/jboss-jaxrs-api_2.1_spec/2.0.1.Final/jboss-jaxrs-api_2.1_spec-2.0.1.Final.jar!/javax/ws/rs/client/ClientBuilder.class to jar:file:/.m2/repository/org/jboss/spec/javax/ws/rs/jboss-jaxrs-api_2.1_spec/2.0.1.Final/jboss-jaxrs-api_2.1_spec-2.0.1.Final.jar!/javax/ws/rs/client/ClientBuilder.class
下面是 jaxrs 和 dropbox 的 Maven 依赖项
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>3.15.6.FINAL</version>
</dependency>
<dependency>
<groupId>com.dropbox.sign</groupId>
<artifactId>dropbox-sign</artifactId>
<version>1.2.0</version>
</dependency>
目前我们无法解决此问题,尽管我们已尝试使用不同版本的 dropbox 和 jaxrs。
如果有人能帮助我们朝正确的方向前进,我们将不胜感激。
不幸的是,没有与 Spring Boot 3 兼容的 Dropbox Sign 版本。目前,Dropbox Sign 仅支持 Jakarta EE 8,Spring Boot 3.x 需要 EE 9 或更高版本。如果您想使用 Dropbox Sign,则必须使用 Spring Boot 2.7.x。
将Spring boot 3.2.2版本更改为3.0.0