3. Liquibase环境安装:JDK环境要求、Liquibase下载与安装、环境变量配置、验证安装

Liquibase 基于 Java 运行,因此正确配置 JDK 环境是安装 Liquibase 的前提。本节将按照生产环境标准,依次完成 JDK 版本确认、Liquibase 下载与安装、环境变量配置及安装验证。

3.1 JDK 环境要求

Liquibase 4.x 及 5.x 版本对 JDK 版本有明确要求。下表列出主流 Liquibase 版本与 JDK 的兼容关系:

Liquibase 版本 最低 JDK 版本 推荐 JDK 版本 说明
4.0 – 4.8 JDK 8 JDK 11 支持 Java 8 特性,建议使用 LTS 版本
4.9 – 4.23 JDK 11 JDK 11 / 17 移除了对 JDK 8 的官方支持
4.24+ / 5.x JDK 17 JDK 17 / 21 强制要求 JDK 17 及以上
生产建议: 推荐统一使用 JDK 17 LTS,既能兼容 Liquibase 4.24+ 及 5.x 版本,也满足大多数企业级 Java 应用的运行时要求。避免使用 JDK 8 或过早的 JDK 11 小版本。

3.2 检查现有 JDK 环境

在安装 Liquibase 之前,先确认当前系统是否已安装 JDK 以及版本是否符合要求。执行以下命令:

# 检查 Java 版本
java -version

# 检查 Java 编译器版本(可选)
javac -version

# 检查 JAVA_HOME 环境变量(Linux / macOS)
echo $JAVA_HOME

# 检查 JAVA_HOME 环境变量(Windows CMD)
echo %JAVA_HOME%

如果 java -version 输出中显示版本号低于 JDK 17,或 JAVA_HOME 未设置,则需要先安装或升级 JDK。

3.3 JDK 安装(快速指引)

以下为各主流操作系统安装 JDK 17 的简要步骤:

  • Linux (Ubuntu/Debian): sudo apt update && sudo apt install openjdk-17-jdk -y
  • Linux (CentOS/RHEL): sudo yum install java-17-openjdk-devel -y
  • macOS (Homebrew): brew install openjdk@17
  • Windows: 从 Adoptium 下载 MSI 安装包,按向导完成安装

安装完成后,务必设置 JAVA_HOME 环境变量并将 $JAVA_HOME/bin 加入 PATH。

3.4 Liquibase 下载与安装

Liquibase 提供多种安装方式,推荐使用 压缩包手动安装 或 包管理器安装。以下为两种主流方式:

方式一:压缩包手动安装(通用)

  1. 访问 Liquibase 官方发布页面:https://github.com/liquibase/liquibase/releases
  2. 下载最新稳定版压缩包(如 liquibase-4.28.0.tar.gz 或 liquibase-4.28.0.zip)
  3. 解压到目标目录,例如 /opt/liquibase 或 C:\liquibase
# Linux / macOS 示例
sudo mkdir -p /opt/liquibase
sudo tar -xzf liquibase-4.28.0.tar.gz -C /opt/liquibase

# Windows 示例(PowerShell)
Expand-Archive -Path liquibase-4.28.0.zip -DestinationPath C:\liquibase

方式二:包管理器安装(macOS / Linux)

# macOS (Homebrew)
brew install liquibase

# Linux (SDKMAN)
sdk install liquibase
注意: 使用包管理器安装时,默认安装路径可能不在标准位置。建议安装后执行 which liquibase 确认可执行文件路径,以便后续配置环境变量。

3.5 环境变量配置

无论使用哪种安装方式,都需要将 Liquibase 可执行文件所在目录加入系统 PATH,并建议设置 LIQUIBASE_HOME 环境变量以便脚本引用。

Linux / macOS 环境变量配置

编辑 ~/.bashrc 或 ~/.zshrc,添加以下内容:

# Liquibase 环境变量
export LIQUIBASE_HOME=/opt/liquibase
export PATH=$PATH:$LIQUIBASE_HOME

使配置生效:

source ~/.bashrc   # 或 source ~/.zshrc

Windows 环境变量配置

  1. 右键“此电脑” → “属性” → “高级系统设置” → “环境变量”
  2. 新建系统变量:变量名 = LIQUIBASE_HOME,变量值 = C:\liquibase
  3. 编辑 Path 变量,添加 %LIQUIBASE_HOME%
  4. 点击“确定”保存

3.6 验证安装

完成环境变量配置后,打开新的终端窗口,执行以下命令验证安装是否成功:

# 验证 Liquibase 版本
liquibase --version

# 验证帮助命令
liquibase --help

# 验证 JDK 与 Liquibase 的集成
liquibase --driver=org.h2.Driver \
          --url=jdbc:h2:mem:test \
          --username=sa \
          --password= \
          status

如果 liquibase --version 正确输出版本号(如 Liquibase Version: 4.28.0),且最后一条 status 命令无报错,则说明环境安装成功。

验证结果示例:
Liquibase Version: 4.28.0
Liquibase Open Source 4.28.0 by Liquibase
Running Changeset: ...(无错误即通过)

3.7 安装架构总览

下图展示了从 JDK 环境到 Liquibase 可执行文件的完整安装架构:

Liquibase 安装架构总览 JDK 环境层 JDK 17 LTS | JAVA_HOME 配置 | PATH 包含 $JAVA_HOME/bin Liquibase 安装层 压缩包解压 / 包管理器安装 | LIQUIBASE_HOME 设置 环境变量配置层 PATH 追加 $LIQUIBASE_HOME | 验证 java -version / liquibase --version 安装验证通过

3.8 常见安装问题与排查

问题现象 可能原因 解决方案
liquibase: command not found PATH 未包含 Liquibase 目录 检查 LIQUIBASE_HOME 是否已加入 PATH,重新打开终端
Error: Java 17 or later is required JDK 版本过低 升级 JDK 至 17+,并确认 JAVA_HOME 指向新版本
java.lang.UnsupportedClassVersionError 编译版本与运行版本不匹配 统一 JDK 版本,确保 java 和 javac 来自同一 JDK
Liquibase did not find a database driver 缺少 JDBC 驱动包 将对应数据库的 JDBC jar 放入 $LIQUIBASE_HOME/lib 目录
最佳实践: 建议将 Liquibase 安装路径与项目代码分离,统一放在 /opt/liquibase 或 C:\tools\liquibase 下,避免因项目清理误删工具文件。同时将 LIQUIBASE_HOME 写入系统级环境变量(如 /etc/profile.d/liquibase.sh),确保所有用户均可使用。