You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java 11下Payara 5.29.0编译找不到javax.rmi.PortableRemoteObject如何解决

解决方案
  1. 类归属说明
    javax.rmi.PortableRemoteObject原本是JDK 8及更早版本内置java.corba模块中的类,Java 11正式移除了所有CORBA相关的内置模块,因此升级到Java 11后会触发找不到类的编译错误。该类不属于EJB API包,你之前引入的jakarta.ejb-api不包含这个类,无法解决报错。

  2. 依赖添加方案
    仅通过新增Maven依赖即可解决该问题,无需修改现有业务代码,你可以在pom.xml中添加如下依赖:

<dependency>
    <groupId>org.glassfish.corba</groupId>
    <artifactId>glassfish-corba-omgapi</artifactId>
    <version>4.2.4</version>
    <scope>provided</scope>
</dependency>

注意:将scope设置为provided即可,因为Payara 5.29.0服务器本身已经内置了该类的实现,不需要将依赖打入最终应用包,避免出现类冲突问题。

  1. 可选适配方案
    如果你后续计划将代码适配到EJB 3版本,可以直接使用@EJB注解注入远程Bean,无需再调用PortableRemoteObject.narrow方法做类型转换,也可以从根源上消除该依赖需求。

内容的提问来源于stack exchange,提问作者George

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 20:45:07