以下是解决 Spring Boot 应用程序出现 "Error running ServiceApplication. Command line is too long. Shorten the command line via JAR manifest or via a classpath file and rerun" 错误的方法:
(1)打开你的 Spring Boot 项目,在项目视图中找到要运行的 ServiceApplication。
(2)右键点击该应用程序,选择 Modify Run Configuration。
(3)在打开的配置窗口中,找到 Shorten command line 选项。
(4)将其从 None 更改为 JAR manifest 或 classpath file。
其中:
当你运行 Spring Boot 应用程序时,IntelliJ IDEA 会将很多依赖和参数添加到命令行中,有时会导致命令行过长。
JAR manifest 选项会将命令行参数存储在生成的 JAR 文件的清单文件中,从而缩短命令行长度。
classpath file 选项会将类路径存储在一个单独的文件中,也能达到缩短命令行的目的。
对于 Maven 用户:
(1)在 pom.xml 文件中添加 Spring Boot 插件的配置:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <executable>true</executable> <mainClass>com.example.ServiceApplication</mainClass> <layout>ZIP</layout> </configuration> </plugin> </plugins> </build>
解释:
<executable>true</executable> 使得生成的 JAR 文件可执行。
<mainClass>com.example.ServiceApplication</mainClass> 指定主类。
<layout>ZIP</layout> 可以帮助减少类路径长度,将类文件打包在一个更紧凑的结构中。