Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 石英作业不是';t正在运行,但石英表正在更新_Java_Oracle11g_Quartz Scheduler_Netbeans 7 - Fatal编程技术网

Java 石英作业不是';t正在运行,但石英表正在更新

Java 石英作业不是';t正在运行,但石英表正在更新,java,oracle11g,quartz-scheduler,netbeans-7,Java,Oracle11g,Quartz Scheduler,Netbeans 7,我无法找到实际原因,但我的石英表正在更新,以便下一次点火时间和上一次点火时间,但作业未运行 石英。特性 org.quartz.scheduler.instanceName="MyScheduler" org.quartz.threadPool.class="org.quartz.simpl.SimpleThreadPool" org.quartz.threadPool.threadCount="4" org.quartz.threadPool.threadsInheritContextClass

我无法找到实际原因,但我的石英表正在更新,以便下一次点火时间和上一次点火时间,但作业未运行

石英。特性

org.quartz.scheduler.instanceName="MyScheduler"
org.quartz.threadPool.class="org.quartz.simpl.SimpleThreadPool"
org.quartz.threadPool.threadCount="4"
org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread="true"
org.quartz.scheduler.threadsInheritContextClassLoaderOfInitializer="true"
org.quartz.jobStore.class="org.quartz.impl.jdbcjobstore.JobStoreTX"
org.quartz.jobStore.driverDelegateClass="org.quartz.impl.jdbcjobstore.StdJDBCDelegate"
org.quartz.jobStore.dataSource="tasksDataStore"
org.quartz.jobStore.tablePrefix="QRTZ_"
org.quartz.jobStore.misfireThreshold="60000"
org.quartz.jobStore.isClustered="false"
org.quartz.dataSource.tasksDataStore.driver="oracle.jdbc.driver.OracleDriver"
org.quartz.dataSource.tasksDataStore.URL="jdbc:oracle:thin:@localhost:1521/orcl"
org.quartz.dataSource.tasksDataStore.user="scott"
org.quartz.dataSource.tasksDataStore.password="tiger"
org.quartz.dataSource.tasksDataStore.maxConnections="20"
为调度器编写的代码

         JobDetail job = null;
        CronTrigger trigger = null;
        Logger log = LoggerFactory.getLogger(CronTrigger.class);

        System.out.println("------- Initializing -------------------");

        // First we must get a reference to a scheduler
        SchedulerFactory sf = new StdSchedulerFactory("/conf/quartz.properties");
        Scheduler sched = sf.getScheduler();


        try {
            System.out.println("------- Scheduling Jobs ----------------");
            job = newJob(SchedulerJob.class).withIdentity("job2", "group2").build();

            trigger = TriggerBuilder
                    .newTrigger()
                    .withIdentity("dummyTriggerName", "group1")
                    .withSchedule(
                            CronScheduleBuilder.cronSchedule("0 0/5 * * * ?"))
                    .build();

            Date ft = sched.scheduleJob(job, trigger);
            // System.out.println(sched.getSchedulerName());
        } catch (Exception e) {
            System.out.println("------- Job Already Exist ----------------");
        }
       sched.start();

确保使用scheduler.start()启动计划程序


否则,quartz将保留作业数据,但不会响应已触发的触发器,也不会实际运行任何操作(待机模式)。

很抱歉,没有在评论中回答,声誉问题。你能解决你的问题吗?这个问题可能来自许多因素:

  • 作业在执行时可能失败
  • 触发器侦听器可以否决该触发器
  • 可以停止作业并报告其执行情况

检查这一点的一个简单方法是使用触发器侦听器和作业侦听器,并在Quartz中记录或调试触发。

我使用的是
scheduler.start()
。但是当我在那里检查正在运行的作业时,我得到的调度程序状态为
STANDBY
您可以发布调度程序初始化代码和quartz.properties吗?您还可以添加创建调度程序的代码吗?您是否尝试向SchedulerJob execute方法添加一些日志?我正在使用java代码打印当前日期和时间scheduler.start()。但是,当我在那里检查正在运行的作业时,我得到的调度程序状态是
STANDBY