私は春ブーツとの統合テストを実行すると、次のエラーを取得しようとしています: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
テーブルが作成されていないことは明らかです。私はできますそれらを手動で作成しますが、春のブートはではないが存在しないときにそれらを作成することができますか?これらのテーブルは起動時に一度だけ作成する必要があり、create if not exisit
のようなSQL文で十分であるため、非常に魅力的です。だから春の起動は自動的にQRTZ
テーブルを作成できますか?
エラーメッセージは、QRTZ_LOCKSという名前のテーブルがないことを示しています。あなたは「QRTZテーブルは作成されていない」と言っています。この例外をスローしたコードの前にQRTZ_LOCKSテーブルを作成するコードがあることを意味しますか? – arcy
'作成するコードがあります。 ''はい、問題はそれについてです。そのコードは存在するかどうか? – Cherry