You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gerrit初始化失败:org.mariadb.jdbc.Driver不可用问题求助

问题原因分析

你碰到的核心问题其实很明确:第一次初始化Gerrit时,它自动下载的MariaDB JDBC驱动包被你连同Gerrit目录一起删掉了,而第二次重新初始化时,Gerrit没能自动重新获取到这个驱动,导致数据库连接失败。

第一次初始化成功是因为Gerrit在配置数据库环节,会自动适配下载对应的JDBC驱动包,并存放在Gerrit安装目录的lib文件夹下。但你删除整个Gerrit目录后,这个驱动文件也被清理了;再加上Gerrit 2.14.6是比较老的版本,可能存在自动下载驱动失败的情况(比如网络限制、版本兼容匹配问题),所以就抛出了Driver class org.mariadb.jdbc.Driver not available的错误。

解决步骤

1. 手动下载适配的MariaDB JDBC驱动

Gerrit 2.14.6对新驱动兼容性不好,建议选择1.5.x系列的驱动包(比如mariadb-java-client-1.5.9.jar)。如果服务器能联网,直接用命令下载:

wget https://downloads.mariadb.com/Connectors/java/connector-java-1.5.9/mariadb-java-client-1.5.9.jar

如果服务器不能联网,就在本地Windows机器下载好驱动包,再用scp传到RHEL 7的/home/gerrit2目录下。

2. 提前部署驱动包再初始化

先手动创建Gerrit的lib目录,把驱动包放进去,这样初始化时Gerrit就能直接识别到:

mkdir -p /home/gerrit2/gerrit/lib
cp mariadb-java-client-1.5.9.jar /home/gerrit2/gerrit/lib/

然后执行初始化命令:

java -jar gerrit-2.14.6.war init -d /home/gerrit2/gerrit

初始化过程中,遇到Canonical URL的提示时,直接输入服务器的IP地址(比如http://192.168.1.100:8080),这样就不用事后修改配置文件踩坑了。

3. 验证数据库连接(可选)

如果还是担心数据库配置有问题,可以先在服务器上测试MariaDB的连接是否正常:

mysql -u gerrit2 -p reviewdb

输入密码后能正常进入数据库,说明用户权限和密码都没问题。

4. 启动Gerrit服务

初始化完成后,启动服务:

/home/gerrit2/gerrit/bin/gerrit.sh start

之后用你配置的IP地址访问Gerrit,登录跳转就不会再指向主机名了。

内容的提问来源于stack exchange,提问作者T Lytle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:39:48