如何使用 jar 文件中的 Liquibase 变更日志
How do I use a Liquibase changelog which is in jar file
目前我的 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 变更日志?
更新
我有:
projectA.jar -> pom.xml
<dependency>
<groupId>com.foo</groupId>
<artifactId>projectB</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
projectA.jar -> application.properties
liquibase.change-log=classpath:/db/changelog/db.changelog-master.xml
projectB.jar -> src/main/resources/db/changelog/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)
我是个白痴。我的本地 ~/.m2
存储库有一个旧版本的 jar
,没有 Liquibase 更新日志。 mvn clean install
解决了这个问题。
目前我的 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 变更日志?
更新
我有:
projectA.jar -> pom.xml
<dependency>
<groupId>com.foo</groupId>
<artifactId>projectB</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
projectA.jar -> application.properties
liquibase.change-log=classpath:/db/changelog/db.changelog-master.xml
projectB.jar -> src/main/resources/db/changelog/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)
我是个白痴。我的本地 ~/.m2
存储库有一个旧版本的 jar
,没有 Liquibase 更新日志。 mvn clean install
解决了这个问题。