java sqllite maven_Maven 关于 SQLite-jdbc 驱动问题

最近给帮另外的团队搞一个Server服务问题,因为服务很微小,所以使用SpringBoot + SQLite。看到很多SpringBoot + SQLite项目使用的是jpa,但是我对这种orm框架不是很感冒,MyBatis手写sql才能感觉顺畅。所以,自己动手丰衣足食。于是,我在https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc/3.20.0找到了相关jar包的信息,于是在 pom.xml 内加入了以下的引用:

org.xerial

sqlite-jdbc

3.20.0

test

就在我以为可以高兴地撸代码的时候,我却手动引入了隐患。在写好了一个简单的demo,准备看看效果的时候,出现了一下的错误:

java.sql.SQLException: Unable to load class: org.sqlite.JDBC from ClassLoader:sun.misc.Launcher$AppClassLoader@18b4aac2;ClassLoader:TomcatEmbeddedWebappClassLoader

context: ROOT

delegate: true

----------> Parent Classloader:

sun.misc.Launcher$AppClassLoader@18b4aac2

我google了所有相关问题的答案,依然没有解决这个报错。我很好奇,我在 application.properties 内点击org.sqlite.JDBC 都可以跳转到相应的class文件,为什么在运行的时候却找不到相应的类。我甚至把整个相关换到了MySQL来检验框架的正确性,显然,框架经受住了考验,而SQLite 驱动的问题,依然无法解决。时间就这样经过,几个小时以后,我发现,我google的所有的答案,用到的 sqlite-jdbc 的版本都是 3.7.2 。于是我在想是不是版本的问题,我就切换到了 3.7.2 。

org.xerial

sqlite-jdbc

3.7.2

实验的结果,让我很震惊,perfect!项目运行起来了。可是为什么 3.20.0 就不行呢。于是重新切换到了 3.20.0 ,发现依然无法运行。我观察到两者的区别,在于test,所以我就把scope给去掉了,结果我的宝贝跑起来了。哈哈。今天两次遇到scope的问题,这是个bad boy!

0

相关

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值