我将通过以下演示来使用大查询设置 liquibase 版本控制: https://medium.com/google-cloud/version-control-of-bigquery-schema-changes-with-liquibase-ddc7092d6d1d 但运行以下命令时出现错误:
java -jar liquibase-core-4.6.2.jar --changeLogFile=create_table.sql update
错误:
Exception in thread "main" java.lang.IllegalArgumentException: Unable to find LIQUIBASE_HOME environment variable
at liquibase.integration.commandline.LiquibaseLauncher.main(LiquibaseLauncher.java:36)
我知道我最有可能需要设置一个环境变量,但我担心我错过了一些东西,因为演示/教程没有提到任何环境变量,而且我在网上找不到 liquibase envvars 的任何设置说明要么。
有人知道我可能会错过什么吗?
最好是查看他们的 Github Repo 中的示例,提供在 Windows / Linux 中运行它的 cmd 脚本。 基本上设置 LIQUIBASE_HOME 应该很复杂。
查看源代码 LiquibaseLauncher.java,似乎 liquibase 只在特定目录中查找相对于
LIQUIBASE_HOME
的 jar 文件。您需要将 jar 添加到这些目录之一。您还需要设置LIQUIBASE_HOME
mkdir -p internal/lib
mv liquibase-core-4.6.2.jar internal/lib
export LIQUIBASE_HOME='.'
java -jar internal/lib/liquibase-core-4.6.2.jar