首页 > 解决方案 > 必须在 Liquibase 上指定 changeLogFile 错误

问题描述

我是 Liquibase 的新手,我尝试使用 liquibase 和 postgres 数据库来使用 liquibase 脚本创建数据库表。我所做的是,我已经手动创建了 Postgres 表并通过运行命令

mvn liquibase:generateChangeLog

我创建了 liquibase-outputChangeLog.xml 文件。现在我尝试更新该脚本并在数据库中再创建一个表。为此,我在我的 changeLog.xml 文件中为该新表编写 XML 代码并尝试执行命令

mvn liquibase:更新

但它给了我以下错误

必须指定 ChangeLogFile。

下面是我的 POM.xml 文件。

    <dependency>
        <groupId>tech.sample</groupId>
        <artifactId>common-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>tech.sample</groupId>
        <artifactId>common-starter-logging</artifactId>
    </dependency>

    <dependency>
        <groupId>org.liquibase</groupId>
        <artifactId>liquibase-core</artifactId>
        <version>3.8.7</version>
    </dependency>

    <dependency>
        <groupId>org.liquibase</groupId>
        <artifactId>liquibase-maven-plugin</artifactId>
        <version>3.8.7</version>
    </dependency>

    <dependency>
        <groupId>org.postgresql</groupId>
        <artifactId>postgresql</artifactId>
        <version>42.2.5</version>
    </dependency>

</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
        </plugin>
        <!--Sonar Plugins-->
        <plugin>
            <groupId>org.sonarsource.scanner.maven</groupId>
            <artifactId>sonar-maven-plugin</artifactId>
        </plugin>
        <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
        </plugin>
        <plugin>
            <groupId>com.github.temyers</groupId>
            <artifactId>cucumber-jvm-parallel-plugin</artifactId>
        </plugin>

        <plugin>
            <groupId>org.liquibase</groupId>
            <artifactId>liquibase-maven-plugin</artifactId>
            <version>3.4.1</version>
            <configuration>
                <propertyFile>src/main/resources/liquibase.properties</propertyFile>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>update</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

他们中的任何一个都可以帮助我,这里有什么问题。

强文本**在此处输入图片描述**

标签: javaspringpostgresqlspring-bootliquibase

解决方案


我认为问题在于,在您的 pom.xml 中指定的属性文件中,您<propertyFile>src/main/resources/liquibase.properties</propertyFile>使用ChangeLogFile的是(大写 C)而不是changeLogFile(小写 C)。请注意,错误消息显示正确的大小写。


推荐阅读