Как запустить Liquibase changeLogFile из моего пути к классам - PullRequest
0 голосов
/ 11 января 2020

У меня есть приложение Spring Boot, настроенное для запуска Liquibase. Я пытаюсь создать отдельный проект, который будет использоваться в качестве проекта управления базой данных. В нем будут храниться все файлы liquibase.properties для разных баз данных.

Мой проект управления базами данных зависит от моего основного приложения, поскольку ему нужно загрузить файл chaneglogFile. Однако мой проект управления базой данных не может найти файл changelogFile на пути к классам.

Вот структура папок основного проекта. Журнал изменений находится в src/main/resources, поэтому maven автоматически добавляет его в classpath

enter image description here

Вот конфигурация в liquibase.properties

changeLogFile=classpath:db/changelog/db.changelog-master.yaml

А также конфигурация подключаемого модуля maven

    <build>
        <plugins>
            <plugin>
                <groupId>org.liquibase</groupId>
                <artifactId>liquibase-maven-plugin</artifactId>
                <version>3.8.2</version>
                <configuration>
                    <propertyFile>liquibase.properties</propertyFile>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>com.my-group</groupId>
                        <artifactId>my-app</artifactId>
                        <version>1.0.0-SNAPSHOT</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>

И полученная ошибка

Failed to execute goal org.liquibase:liquibase-maven-plugin:3.8.2:status (default-cli) on project my-app-db: Error setting up or running Liquibase: classpath:db/changelog/db.changelog-master.yaml does not exist

1 Ответ

0 голосов
/ 14 января 2020

как насчет попытки

changeLogFile=src/main/resources/db/changelog/db.changelog-master.yaml

это работает для вас?

...