zoukankan      html  css  js  c++  java
  • quartz无法实例化Job的错误

    第一次接触Quartz的任务调度,把Job的实现类和调度的程序放在了一个java文件里但是却出现了以下的错误:


    org.quartz.SchedulerException: Problem instantiating class 'com.jiaoyiping.stuty_quartz.SimpleJob2' [See nested exception: java.lang.IllegalAccessException: Class org.quartz.simpl.SimpleJobFactory can not access a member of class com.jiaoyiping.stuty_quartz.SimpleJob2 with modifiers ""]
     at org.quartz.simpl.SimpleJobFactory.newJob(SimpleJobFactory.java:58)
     at org.quartz.simpl.PropertySettingJobFactory.newJob(PropertySettingJobFactory.java:69)
     at org.quartz.core.JobRunShell.initialize(JobRunShell.java:134)
     at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:387)
    Caused by: java.lang.IllegalAccessException: Class org.quartz.simpl.SimpleJobFactory can not access a member of class com.jiaoyiping.stuty_quartz.SimpleJob2 with modifiers ""
     at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:95)
     at java.lang.Class.newInstance0(Class.java:368)
     at java.lang.Class.newInstance(Class.java:327)
     at org.quartz.simpl.SimpleJobFactory.newJob(SimpleJobFactory.java:56)
     ... 3 more

    意思是反射的时候出错,不能实例化Job

    网上查了一下,发现在反射的时候,Job的实现类需要定义成Public的,否则就无法实例化,所以把实现类和调度程序放在同一个.java文件夹下是不可行的

    把Job实现类放在一个独立的java文件里,然后把class定义成public的,然后问题就解决了。

  • 相关阅读:
    2017福建夏令营Day7(数论)
    2017福建夏令营Day3(搜索)
    【FZSZ2017暑假提高组Day9】猜数游戏(number)
    【FZSZ2017暑假提高组Day6】bd
    POJ 3660 传递闭包问题
    NOIP 提高组 2002 均分纸牌
    POJ 2387 Til the Cows Come Home
    NOIP 2016 Day2 T1 组合数问题
    06--ubuntu的sqlite安装
    ARM架构与体系学习(二)——3级流水线
  • 原文地址:https://www.cnblogs.com/jiaoyiping/p/3088092.html
Copyright © 2011-2022 走看看