如何使用jar文件中的Liquibase更改日志

时间:2015-05-20 15:01:01

标签: java spring maven spring-boot liquibase

我目前在application.properties中有以下内容:

liquibase.change-log=classpath:/db/changelog/db.changelog-master.xml

该文件的实际路径为src/main/resources/db/changelog/db.changelog-master.xml

更改日志是由Liquibase发现的,一切都按照我的预期运作。

我已将更改日志和所有项目的JPA实体和存储库移动到一个单独的项目中,以便可以与其他项目共享。

第二个项目是第一个项目的Maven依赖项。我需要在第一个项目的application.properties中使用哪条路径来访问第二个项目中的liquibase changelog?

更新

我有:

projectA.jar - >的pom.xml

<dependency>
    <groupId>com.foo</groupId>
    <artifactId>projectB</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

projectA.jar - &gt; application.properties

liquibase.change-log=classpath:/db/changelog/db.changelog-master.xml

projectB.jar - &gt;的src /主/资源/分贝/更改日志/ db.changelog-master.xml

但我得到了:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration$LiquibaseConfiguration': Invocation of init method failed; nested exception is java.lang.IllegalStateException: Cannot find changelog location: class path resource [db/changelog/db.changelog-master.xml] (please add changelog or check your Liquibase configuration)

1 个答案:

答案 0 :(得分:3)

我是个白痴。我的本地~/.m2存储库有一个旧版本的jar没有Liquibase更改日志。 mvn clean install解决了问题。