为什么liquibase:diff返回“必须提供参考数据库才能执行差异”?

时间:2016-03-07 00:38:43

标签: java maven liquibase

我成功运行了“maven compile”,但是当我调用“liquibase:diff”时,我收到以下错误。我不确定这个错误是否与错误实际对应,因为我已经清楚地列出了数据库。我附上了我的pom.xml。我是liquibase的新手,并且在java环境中没有多少编码经验。提前感谢您的任何帮助。

  

无法执行目标org.liquibase:liquibase-maven-plugin:3.4.2:diff>项目skyrecon上的(default-cli):参考数据库必须是>提供执行差异。 - > [帮助1]

         <plugin>
            <groupId>org.liquibase</groupId>
            <artifactId>liquibase-maven-plugin</artifactId>
            <version>${liquibase.version}</version>
            <configuration>
                <changeLogFile>src/main/resources/config/liquibase/master.xml</changeLogFile>
                <diffChangeLogFile>src/main/resources/config/liquibase/changelog/${maven.build.timestamp}_changelog.xml</diffChangeLogFile>
                <driver>com.mysql.jdbc.Driver</driver>
                <url>jdbc:mysql://us-cdbr-azure-northcentral-b.cloudapp.net</url>
                <referencedatabaseref>aerialrecon</referencedatabaseref>
                <username>username</username>
                <password>password</password>
                <verbose>true</verbose>
                <logging>debug</logging>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>org.javassist</groupId>
                    <artifactId>javassist</artifactId>
                    <version>3.18.2-GA</version>
                </dependency>
                <dependency>
                    <groupId>org.liquibase.ext</groupId>
                    <artifactId>liquibase-hibernate4</artifactId>
                    <version>${liquibase-hibernate4.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-data-jpa</artifactId>
                    <version>${project.parent.version}</version>
                </dependency>
            </dependencies>
        </plugin>

1 个答案:

答案 0 :(得分:4)

这是我更新的pom.xml。事实证明我没有referenceUrl。我在liquibase github上找到了产生我收到的错误消息的代码,它与此有关。非常含糊的错误信息。

            <configuration>
                <changeLogFile>src/main/resources/config/liquibase/master.xml</changeLogFile>
                <diffChangeLogFile>src/main/resources/config/liquibase/changelog/${maven.build.timestamp}_changelog.xml</diffChangeLogFile>
                <driver>com.mysql.jdbc.Driver</driver>
                <url>jdbc:mysql://us-cdbr-azure-northcentral-b.cloudapp.net/acsm_67a05aabb1dc42f</url>
                <referenceUrl>hibernate:spring:edu.depaul.se491.domain?dialect=org.hibernate.dialect.MySQLInnoDBDialect</referenceUrl>
                <username>ba6361cb0bc1cf</username>
                <password>113ee24e12c70ef</password>
                <verbose>true</verbose>
                <logging>debug</logging>
            </configuration>