java - 必须在 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>
他们中的任何一个都可以帮助我,这里有什么问题。
解决方案
我认为问题在于,在您的 pom.xml 中指定的属性文件中,您<propertyFile>src/main/resources/liquibase.properties</propertyFile>
使用ChangeLogFile
的是(大写 C)而不是changeLogFile
(小写 C)。请注意,错误消息显示正确的大小写。
推荐阅读
- java - 无法解析“集合”中的方法“组合”
- python - Dash with python 3.9 WSGI Apache 2.4 Win does not work........ dependencies missing?
- regexp-replace - 如何使用正则表达式格式化数字?
- amazon-web-services - 有没有办法从 AWS 检索当前配置文件?
- python - Cytoscape 和选择器
- git - Git 钩子和自动生成的文档
- c# - Visual Studio 2019 中的运行时文本模板
- azure - Azure isSoftDelete 假/真值是如何确定的?
- jenkins - Jenkins 管道不扩展 Git 命令
- loops - 如何根据特征制作生成代码?