получил "неправильную арность 1 для clojurewerkz.quartzite.jobs/of-type" при использовании примера cron кварцита? - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь использовать пример cron в качестве стартовой страницы get: http://clojurequartz.info/articles/getting_started.html

(defjob NoOpJob
[ctx]
(comment "Does nothing"))

(defn -main
[& m]
(let [s   (-> (qs/initialize) qs/start)
    job (j/build
          (j/of-type NoOpJob)
          (j/with-identity (j/key "jobs.noop.1")))
    trigger (t/build
              (t/with-identity (t/key "triggers.1"))
              (t/start-now)
              (t/with-schedule (schedule
                                 (cron-schedule "0 0 15 ? * 5"))))]
(qs/schedule s job trigger)))

Интеллект дает мне "неправильную арность 1 для clojurewerkz.quartzite.jobs/of-type" в строке

(j/of-type NoOpJob)

Я проверяю api doc: http://reference.clojurequartz.info/clojurewerkz.quartzite.jobs.html#var-of-type

функция типа имеет две арности:

(of-type jb clazz)

что-то не так? Спасибо!

1 Ответ

1 голос
/ 16 апреля 2019

j/build - это макрос, который «вводит» первый аргумент (через макрос потоков ->):

(defmacro ^JobDetail build
  [& body]
  `(let [jb# (JobBuilder/newJob)]
     (finalize (-> jb# ~@body))))

Ваша IDE ошибочно заявляет об ошибке здесь. Скорее всего, код компилируется и работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...