我正在使用 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
已在 Spring 6 中删除(请参阅
Drop RPC 样式远程处理:Hessian、HTTP Invoker、JMS Invoker、JAX-WS #27422)。在 Spring 5.3 中,
org.springframework.remoting
的子类被标记为已弃用(请参阅 Deprecate remoting Technologies support #25379),但有趣的是,
RemoteExporter
本身并未被标记为已弃用,但无论如何它已被删除。您需要找到替换库或要求 jsonrpc4j 的开发人员提供支持 Spring 6/Spring Boot 3 的版本。和 建议的解决方案 。