【问题标题】:why maven liquibase:diff -DdiffExcludeObjects parameter does not work为什么 maven liquibase:diff -DdiffExcludeObjects 参数不起作用
【发布时间】:2016-12-06 23:33:16
【问题描述】:

我有一个项目正在使用 liquibase 进行数据库同步。当我使用 maven liquibase 生成更新日志时,我想排除一些名称以 oauth_ 开头的数据库对象

我的maven目标是这样的

liquibase:diff -DdiffExcludeObjects="table:oauth_.*"

但是当我执行目标时,生成的变更日志包括这些变更集:

<changeSet author="aliakbarazizkhani (generated)" id="1470077228335-4">
    <dropTable tableName="oauth_access_token"/>
</changeSet>
<changeSet author="aliakbarazizkhani (generated)" id="1470077228335-5">
    <dropTable tableName="oauth_approvals"/>
</changeSet>
<changeSet author="aliakbarazizkhani (generated)" id="1470077228335-6">
    <dropTable tableName="oauth_client_details"/>
</changeSet>
<changeSet author="aliakbarazizkhani (generated)" id="1470077228335-7">
    <dropTable tableName="oauth_client_token"/>
</changeSet>
<changeSet author="aliakbarazizkhani (generated)" id="1470077228335-8">
    <dropTable tableName="oauth_code"/>
</changeSet>
<changeSet author="aliakbarazizkhani (generated)" id="1470077228335-9">
    <dropTable tableName="oauth_refresh_token"/>
</changeSet>

【问题讨论】:

  • 您使用的是最新版本的 liquibase 吗?这个功能是在3.3.2 中引入的。只是为了确保...
  • 我使用的是 3.4.2 版本

标签: liquibase


【解决方案1】:

正确答案:

mvn liquibase:diff -Dliquibase.diffExcludeObjects="table:oauth_.*"

-Dliquibase. 是参数前缀。

更多参数在here

【讨论】:

    【解决方案2】:

    mvn liquibase:diff -Dliquibase.diffExcludeObjects=oauth_*

    【讨论】:

      【解决方案3】:

      我认为问题可能只是属性的名称。文档表明该属性应为exludeObjects 而不是diffExcludeObjects

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多