Я пытаюсь запустить тест интеграции с пружинным загрузки и получить следующее сообщение об ошибке:Может ли SchedulerFactory создавать таблицы для кварца при запуске?
Caused by: org.springframework.context.ApplicationContextException:
Failed to start bean 'SchedulerFactory'; nested exception is org.springframework.scheduling.SchedulingException:
Could not start Quartz Scheduler; nested exception is org.quartz.SchedulerConfigException:
Failure occured during job recovery. [See nested exception:
org.quartz.impl.jdbcjobstore.LockException: Failure obtaining db row lock: Table "QRTZ_LOCKS" not found; SQL statement:
SELECT * FROM QRTZ_LOCKS UPDLOCK WHERE LOCK_NAME = ? [42102-193] [See nested exception: org.h2.jdbc.JdbcSQLException: Table "QRTZ_LOCKS" not found; SQL statement:
SELECT * FROM QRTZ_LOCKS UPDLOCK WHERE LOCK_NAME = ? [42102-193]]]
at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:176)
Очевидно, что QRTZ
таблицы не были созданы. I может создать их вручную, но верно ли, что весенний ботинок не способен создавать их, когда их не существует? Выглядит очень страшно, если так, потому что эти таблицы нужно создавать только один раз при запуске, а SQL-операторов вроде create if not exisit
. Так может ли пружинная загрузка автоматически создает таблицы QRTZ
?
В сообщении об ошибке говорится, что нет таблицы с именем QRTZ_LOCKS. Вы говорите: «Таблицы« QRTZ »не были созданы»; вы имеете в виду, что есть код для создания таблицы QRTZ_LOCKS перед кодом, который выкинул это исключение? – arcy
'есть код для создания ...' Да, вопрос об этом. Существует ли этот код или нет? – Cherry