项目场景:
提示:这里简述项目相关背景:
idea中启动项目报错:
解决方案
在idea 的运行配置中,修改enviroment
下的shorten command line
为jar manifest
注: 有时shorten command line
可能不是默认存在的,需要手动添加
原因分析:
提示:这里填写问题的分析:
命令行太长了!
看一下一个springboot项目正常启动的命令,也就是shorten command line
= none
的情况:
简而言之,言而简之:
java 【一些选项配置】 -classpath "...." com.example.cloud.Application
关键就是这里的-classpath(类路径),表示JVM运行时查找某个类所在文件的路径,比如我们用到依赖的工具类。
所以,这个长度是非常大的,取决于你引入的依赖多不多
所以可知原因是:
类路径太长导致的启动命令也太长了
在我们选择JAR manifest
,可以看到,执行命令变成
语句结构和上面一样,但是-classpath只跟了这么一个jar包
C:\Users\admin\AppData\Local\Temp\classpath1836117402.jar
这意味着 IDE 不再直接在命令行中列出所有依赖的 JAR 文件,而是生成一个主 JAR 文件(如果尚未生成),并在其 Manifest 文件中正确设置 Class-Path 属性,以指向所有依赖的库。