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

时间:2019-08-22 15:35:40

标签: java quartz-scheduler rmi quartz

我正在使用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

和客户端

    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:无法获取远程调度程序的句柄:QrtzScheduler _ $ _ NON_CLUSTERED [请参见嵌套的异常:java.rmi.NotBoundException:Sched1 _ $ _ NON_CLUSTERED]

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

1 个答案:

答案 0 :(得分:0)

请遵循以下步骤:

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

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

第3步:重新启动Java代码(预定)。