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

Tomcat 9启动报错:无法找到org.apache.commons.dbcp.BasicDataSourceFactory

问题原因分析

核心原因

Tomcat 9.0.x版本默认采用Tomcat DBCP 2作为数据源实现,对应的工厂类是org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory,而报错中寻找的org.apache.commons.dbcp.BasicDataSourceFactory属于旧版Commons DBCP 1的类,两者分属不同的数据源体系,版本完全不兼容。

具体触发因素

  • 配置未指定factory属性:你的Resource配置里没有显式声明factory属性,Tomcat可能因环境残留配置或类路径逻辑错误,尝试加载旧版DBCP 1的工厂类。
  • 依赖包版本不匹配:你放置的tomcat-dbcp.jar若不是Tomcat 9.0.64对应的版本,会导致无法加载正确的DBCP 2工厂类;也可能是该jar包损坏、缺失关键类文件。
  • 潜在类路径冲突:如果Tomcat的lib目录中存在旧版commons-dbcp.jar(比如之前部署残留的文件),类加载器会优先加载旧版类,引发冲突。

内容的提问来源于stack exchange,提问作者Sam Donato

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 16:32:43