Liquibase sql格式文件中的多个上下文

Liquibase sql格式文件中的多个上下文,liquibase,Liquibase,我试图在Liquibase中使用多个上下文支持,但我无法实现结果。我的SQL格式变更集如下所示 --changeset bkolasa:1 context:new-db and !edb dbms:postgresql 然后当我执行命令时 java -jar liquibase.jar --contexts=new-db,edb --driver=org.postgresql.Driver --url=jdbc:postgresql://example.com:5432/liqtest?ssl

我试图在Liquibase中使用多个上下文支持,但我无法实现结果。我的SQL格式变更集如下所示

--changeset bkolasa:1 context:new-db and !edb dbms:postgresql
然后当我执行命令时

java -jar liquibase.jar --contexts=new-db,edb --driver=org.postgresql.Driver --url=jdbc:postgresql://example.com:5432/liqtest?ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory --username=liqtest --password=liqtest --changeLogFile=mychangelog.sql update
变更集仍在加载中


我的Liquibase版本是3.2.2。

您是否尝试在运行时按如下方式指定上下文

--context=“新建数据库和edb”


这对我很有用

如果您希望在两种上下文中执行更改集,即
dev
test
,那么您可能希望使用
而不是

  • 只需要一个上下文
  • 需要所有上下文
例如,以下更改集将应用于
dev
上下文,也将应用于
test
上下文:

-- changeset istepniak:db-1.14.1 context:dev or test
相反,以下更改集需要同时存在两个上下文:

-- changeset istepniak:db-1.14.1 context:dev and oracle

–context=dev,qa
为我工作。 在Liquibase 3.2中,增加了对变更集中上下文表达式的支持。 例如:
context=“qa或(开发和发布)”

较新版本具有可用于复杂业务案例的标签

-- changeset istepniak:db-1.14.1 context:dev and oracle