调度程序客户端启动失败 -> 无法获取远程调度程序的句柄:Sched1_$_NON_CLUSTERED

Scheduler client initiation failed -> Could not get handle to remote scheduler: Sched1_$_NON_CLUSTERED

我正在使用 Quartz 2.3.1

RMI NON_CLUSTERED 模式。

    properties for the server are set as follow:
    org.quartz.scheduler.instanceName: Sched1
    org.quartz.scheduler.rmi.export: true
    org.quartz.scheduler.rmi.registryHost: localhost
    org.quartz.scheduler.rmi.registryPort: 1099
    org.quartz.scheduler.rmi.createRegistry: true

    org.quartz.scheduler.skipUpdateCheck: true

AND FOR CLIENT

    org.quartz.scheduler.instanceName: Sched1
    org.quartz.scheduler.logger: schedLogger
    org.quartz.scheduler.skipUpdateCheck: true
    org.quartz.scheduler.rmi.proxy: true
    org.quartz.scheduler.rmi.registryHost: localhost
    org.quartz.scheduler.rmi.registryPort: 1099

当我尝试 运行 客户端时,出现以下异常:

org.quartz.SchedulerException: Could not get handle to remote scheduler: QrtzScheduler_$_NON_CLUSTERED [See nested exception: java.rmi.NotBoundException: Sched1_$_NON_CLUSTERED]

这在使用上述属性文件的 windows 服务器中有效,但在 Linux(ubuntu) 中无效,并给出上述异常。

按照以下步骤操作:

第 1 步:在 schedular-server.properties 中的 属性 下方添加: org.quartz.scheduler.rmi.serverPort = 1100

第 2 步:运行 在 ubuntu 中的命令下方:
sudo rmiregistry -J-Djava.rmi.server.useCodebaseOnly=false &

第 3 步:重新启动您的 java 代码(预定)。