Liquibase 使用maven对具有多模式的generateChangeLog进行液化

Liquibase 使用maven对具有多模式的generateChangeLog进行液化,liquibase,Liquibase,在我的项目中,我们希望使用liquibase为我们正在使用的多个模式生成sql。我已经用单个模式配置了maven插件,它工作得很好,但是当我试图用执行配置多个模式时,它不工作。我通过创建不同的概要文件和该概要文件的特定目标来尝试它,它可以工作,但我希望它在单个目标中运行,所有模式都具有特定于每个模式的不同changelog 下面是我用于单一模式的配置 <plugin> <groupId>org.liquibase</groupId&g

在我的项目中,我们希望使用liquibase为我们正在使用的多个模式生成sql。我已经用单个模式配置了maven插件,它工作得很好,但是当我试图用执行配置多个模式时,它不工作。我通过创建不同的概要文件和该概要文件的特定目标来尝试它,它可以工作,但我希望它在单个目标中运行,所有模式都具有特定于每个模式的不同changelog

下面是我用于单一模式的配置

<plugin>
                <groupId>org.liquibase</groupId>
                <artifactId>liquibase-maven-plugin</artifactId>
                <version>3.4.1</version>
                <configuration>
                    <propertyFile>${project.build.directory}/unpack/liquibase.properties</propertyFile>
                    <outputChangeLogFile>${project.build.directory}/liquibase-outputChangeLog.xml</outputChangeLogFile>
                    <changeLogFile>${project.build.directory}/liquibase-outputChangeLog.xml</changeLogFile>
                    <diffTypes>tables, views, columns, indexes, foreignkeys, primarykeys, uniqueconstraints, data</diffTypes>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>org.liquibase.ext</groupId>
                        <artifactId>liquibase-hibernate4</artifactId>
                        <version>3.5</version>
                    </dependency>
                    <!-- ojdbc6.jar example -->
                    <dependency>
                        <groupId>com.oracle</groupId>
                        <artifactId>ojdbc6</artifactId>
                        <version>11.2.0.1</version>
                    </dependency>

                    <!-- ojdbc7.jar example -->
                    <dependency>
                        <groupId>com.oracle</groupId>
                        <artifactId>ojdbc7</artifactId>
                        <version>12.1.0.2</version>
                    </dependency>
                </dependencies>
                <executions>
                    <execution>
                        <id>generate-change-log</id>
                        <phase>generate-resources</phase>
                        <goals>
                            <goal>generateChangeLog</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>sync-sql-log</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>changelogSync</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>generate-sql-log</id>
                        <phase>generate-resources</phase>
                        <goals>
                            <goal>updateSQL</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

org.liquibase
liquibase maven插件
3.4.1
${project.build.directory}/unpack/liquibase.properties
${project.build.directory}/liquibase-outputChangeLog.xml
${project.build.directory}/liquibase-outputChangeLog.xml
表、视图、列、索引、外键、主键、唯一约束、数据
org.liquibase.ext
液化酶-4
3.5
com.oracle
ojdbc6
11.2.0.1
com.oracle
ojdbc7
12.1.0.2
生成更改日志
产生资源
generateChangeLog
同步sql日志
过程资源
更改同步
生成sql日志
产生资源
更新SQL

当你说“不工作”时,你能更具体一点吗?有错误吗?如果是,错误是什么?结果是否与您预期的不同?如果是这样,您期望得到什么结果,实际结果是什么?Steve我在执行目标期间遇到了与db凭据(用户/密码不正确)相关的问题,尽管所有这些都是正确的,并且我能够使用sql命令行进行连接。我通过创建多个执行并传递特定的属性文件来解决这个问题,我在其中提到了与特定于模式的详细信息相关的详细信息,它工作正常,并按预期生成所有文件。generate-change-log1生成资源${project.build.directory}/unpack/first_liquibase.properties${project.build.directory}/changeLog_1.xml true generateChangeLog与其他架构属性使用的配置相同:)您应该在答案中注明您的解决方案,并接受自己的答案,而不是将其保留在注释中。