idea启动正常,打成jar包时,启动报错

背景

自己写了个小程序,在idea中启动正常,达成jar包发布时,启动报错。

Caused by: java.sql.SQLException: unknown jdbc driver :

at com.alibaba.druid.util.JdbcUtils.getDriverClassName(JdbcUtils.java:517)

at com.alibaba.druid.pool.DruidDataSource.resolveDriver(DruidDataSource.java:1203)

at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:887)

at com.alibaba.druid.pool.CoreDruidDataSource.init(CoreDruidDataSource.java:71)

... 152 common frames omitted

其实和报错本身没有关系,被报错误导,检查了半天jar包内容和maven的打包命令,结果是jar包启动命令的问题。

原因

我的启动命令如下:

shell 复制代码
java -jar .\zcm-docreader.jar -DCONFIG_HOME=D:\workspace\myapp\CONFIG_HOME 

如上所示,我将配置文件外挂,并通过环境变量来告诉应用外挂的配置文件目录。

然而java -jar启动命令中,参数不能放在jar包后面,或者说jar包路径要放在命令的最后面,否则命令读到了jar包路径后,后面的内容将会被忽略。

因为这个原因,导致我的应用没有读到配置文件,从而一直报驱动不存在。实属误导。

解决方案

将jar包路径放在命令的最后面。

如下:

shell 复制代码
java -jar -DCONFIG_HOME=D:\workspace\myapp\CONFIG_HOME .\zcm-docreader.jar

因为jar包路径后面的内容会被忽略,从而导致出现其他问题,这边记录一下,希望能帮到其他踩坑的人。

相关推荐
QQ_19632884759 天前
Python-flask框架西山区家政服务评价系统网站设计与开发-Pycharm django
python·pycharm·flask
zxfBdd9 天前
Error:scala: No ‘scala-library*.jar‘ in Scala compiler classpath in Scala SDK
大数据·scala·jar
Diligently_9 天前
idea 中vm option 配置
java·ide·intellij-idea
当战神遇到编程9 天前
LinkedList深入讲解
java·intellij-idea
lonelyhiker10 天前
新版idea的structure卡顿
java·ide·intellij-idea
Peter44710 天前
新装的idea启动报错
intellij-idea·intellij idea
minh_coo10 天前
Spring单元测试之反射利器:ReflectionTestUtils
java·后端·spring·单元测试·intellij-idea
高斯林.神犇11 天前
idea快捷键
java·ide·intellij-idea
IT枫斗者11 天前
IntelliJ IDEA 2025.3史诗级更新:统一发行版+Spring Boot 4支持,这更新太香了!
java·开发语言·前端·javascript·spring boot·后端·intellij-idea
人生导师yxc12 天前
IDE缓存配置等位置更改(自存)
java·ide·intellij-idea