Java应用(Eclipse环境)报错:java.lang.ClassNotFoundException: org.hsqldb.jdbc.JDBCDriver
解决java.lang.ClassNotFoundException: org.hsqldb.jdbc.JDBCDriver问题
这个错误本质就是你的Java项目在运行时找不到HSQLDB的JDBC驱动类——说白了就是HSQLDB的核心jar包没被正确加入到项目的类路径里。下面分几种常见场景给你具体的解决步骤:
一、手动添加HSQLDB Jar包(适合不用构建工具的项目)
- 先获取HSQLDB的jar包:从HSQLDB官方发行包解压后,在
lib目录下就能找到hsqldb.jar文件。 - 在Eclipse里配置类路径:
- 右键你的Java项目,选择「Build Path」→「Add External Archives...」
- 在弹出的文件选择框里找到刚才的
hsqldb.jar,选中并确认 - 此时项目的「Referenced Libraries」下会出现这个jar包,说明添加成功
- 重新运行程序,驱动找不到的问题应该就能解决了。
二、用Maven管理依赖(适合Maven项目)
如果你的项目用Maven构建,直接在pom.xml中添加HSQLDB依赖,Eclipse会自动下载并配置类路径:
<dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artifactId> <version>2.7.2</version> <!-- 可根据需求更换对应版本 --> </dependency>
添加后右键项目→「Maven」→「Update Project...」,等待依赖更新完成即可。
三、用Gradle管理依赖(适合Gradle项目)
对于Gradle项目,在build.gradle的dependencies块中添加:
dependencies { implementation 'org.hsqldb:hsqldb:2.7.2' }
点击Eclipse右侧Gradle面板的「Refresh Gradle Project」按钮,同步依赖后就搞定了。
额外注意事项
- 检查驱动类名匹配度:HSQLDB 2.x版本的驱动类是
org.hsqldb.jdbc.JDBCDriver,而1.x版本是org.hsqldb.jdbcDriver(少了一层jdbc包),如果jar包版本和代码里的类名不匹配,也会触发这个错误。 - 若开发Web项目:手动添加jar包时要放到
WEB-INF/lib目录下,或者通过构建工具自动同步到该目录,不然Web服务器运行时还是找不到驱动。 - JDBC 4.0+无需显式调用
Class.forName()加载驱动,但特殊环境下加上这句能避免潜在问题。
内容的提问来源于stack exchange,提问作者Callum
相关产品推荐
相关产品推荐

