java - 应用程序在 Spring Boot 3.0.0 新版本中运行失败

标签 java spring-boot json-rpc jsonrpc4j

我正在使用 jsonrpc4j 库来处理我的 jsonrpc api。迁移到 SpringBoot 3.0.0 新版本后,它可以构建,但运行失败,并出现 RemoteExporter 错误:

ERROR 22396 --- [           main] o.s.boot.SpringApplication               : Application run failed
java.lang.NoClassDefFoundError: org/springframework/remoting/support/RemoteExporter

因为 jsonrpc4j 在其中使用它。

在我看来,原因在于带有 SpringBoot 3.0.0 依赖项的 Spring Context 版本。该版本中 org.springframework.remoting 包缺少 .support 包。

有什么办法可以避免这个问题吗?

最佳答案

看起来 org.springframework.remoting 在 Spring 6 中已被删除(请参阅 Drop RPC-style remoting: Hessian, HTTP Invoker, JMS Invoker, JAX-WS #27422 )。在 Spring 5.3 中,RemoteExporter 的子类被标记为已弃用(请参阅 Deprecate remoting technologies support #25379 ),但有趣的是,RemoteExporter 本身并没有被标记为已弃用,但它已被删除反正。您需要找到替代库或要求 jsonrpc4j 的开发人员提供支持 Spring 6/Spring Boot 3 的版本。

关于java - 应用程序在 Spring Boot 3.0.0 新版本中运行失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74760350/

相关文章:

java - IDocumentFilter 使用 HashMap 作为字典 Menu 来验证 JTextField

java - 我如何告诉 Java 两个 "?"是同一类型?

javascript - 如何使用 JavaScript 提交 JSONRPC 请求

iphone - 如何从 json-rpc web 服务 : iPad/iPhone/Objective C 获取数据

java - JSON 作为表单参数

java - 线程 "main"java.lang.ClassNotFoundException : 中的异常

Spring Boot + Primefaces - "Unrecognized Content Type"异常

java - org.springframework.web.client.ResourceAccessException : I/O error on GET request for "http://localhost:8080/": Connection refused: connect

JAVA SPRING BOOT - 在运行时交换环境变量的内容

javascript - 尝试发送 USDC 时无法获取钱包签名者 @solana-labs/web3.js