0

spring-shellデータベース移行ツールを開発しています。

現時点では、groovy-dsl extension でliquibase を使用しようとしています。私のbuild.gradleには拡張jarが含まれており、liquibaseで宣言しましたspring-shell-plugin.xml

spring-shell-plugin.xml

<bean id="liquibase" class="liquibase.integration.spring.SpringLiquibase" depends-on="postgresService">
    <property name="dataSource" ref="psqlDataSource"/>
    <property name="changeLog" value="com.example.db.DbChangelog_master"/>
    <property name="defaultSchema" value="${postgres.schema}"/>
</bean>

しかし、アプリケーションを起動するたびに、liquibase は次のエラーをスローします。

Caused by: liquibase.exception.UnknownChangelogFormatException: Cannot find parser that supports com.example.db.DbChangelog_master
    at liquibase.parser.ChangeLogParserFactory.getParser(ChangeLogParserFactory.java:70)
    at liquibase.Liquibase.getDatabaseChangeLog(Liquibase.java:226)
    at liquibase.Liquibase.update(Liquibase.java:202)
    at liquibase.Liquibase.update(Liquibase.java:192)
    at liquibase.integration.spring.SpringLiquibase.performUpdate(SpringLiquibase.java:434)
    at liquibase.integration.spring.SpringLiquibase.afterPropertiesSet(SpringLiquibase.java:391)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
    ... 13 more

ドキュメントは少し珍しく、jar もクラスパスに含まれています。

Groovy スクリプトは にある必要がありsrc/main/resourcesますか? 現在、それらは別のパッケージに入っていますsrc/main/groovy

4

1 に答える 1