springboot 项目启动报错:Error running ‘ServiceStarter‘: Command line is too long.

本文介绍了如何解决IntelliJ IDEA启动时因命令行过长引发的错误,通过修改workspace.xml和Edit Configuration调整,实现动态类路径,以提升项目启动效率。

项目启动报错:

Error running 'Application';
Command line is too long.Shorten command line for Application or also for Spring Boot default configuratin.

解决方法: 排查发现,实际idea启动时:

"C:\Program Files\RedHat\java-1.8.0-openjdk-1.8.0.212-3\bin\java.exe" -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dspring.liveBeansView.mbeanDomain -Dspring.application.admin.enabled=true "-javaagent:D:\Dev\IDE\IDEA\IntelliJ IDEA 2018.3.5\lib\idea_rt.jar=51042:D:\Dev\IDE\IDEA\IntelliJ IDEA 2018.3.5\bin" -Dfile.encoding=UTF-8 -classpath C:\Users\Dell\AppData\Local\Temp\classpath443986179.jar com.xxx.Application

该命令行超长,因而触发了IDEA的启动报错,解决办法是将其改为动态类路径

方法1:

在项目的根目录下的.idea/workspace.xml文件中的<component name="PropertiesComponent">节点下添加一个<property> 节点 如下代码:

<component name="PropertiesComponent">

  ...

    <property name="dynamic.classpath" value="true" />
</component>

 

方法2:进入Edit Configuration

修改command line为JAR manifest即可(此方法 为别人试验所得)

 

在使用 IntelliJ IDEA 启动 Java 应用时,如果遇到报错信息 `Error running 'xxx': Command line is too long`,通常是因为启动命令行参数过长,超出了操作系统对命令行长度的限制。以下是几种有效的解决方法: ### 修改启动配置 1. 打开项目目录,找到 `.idea` 文件夹下的 `workspace.xml` 文件。 2. 在 `<component name="RunManager">` 标签内,添加以下属性: ```xml <option name="ALTERNATIVE_JVM_PARAMETERS" value="true" /> ``` 3. 保存文件并重新启动 IntelliJ IDEA [^1]。 ### 使用 JAR 清单文件 另一种方法是通过构建 JAR 文件,并在 `MANIFEST.MF` 文件中指定类路径。这样可以避免命令行参数过长的问题。 1. 在 `pom.xml` 中配置 `maven-jar-plugin` 插件,指定主类: ```xml <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <mainClass>com.example.Main</mainClass> </manifest> </archive> </configuration> </plugin> </plugins> </build> ``` 2. 构建项目并生成 JAR 文件: ```bash mvn clean package ``` 3. 通过命令行运行生成的 JAR 文件: ```bash java -jar target/your-application.jar ``` ### 使用外部配置文件 还可以通过外部配置文件来缩短命令行长度。在 IntelliJ IDEA 中,可以通过配置文件传递参数,而不是直接在命令行中输入。 1. 在 Run/Debug Configurations 窗口中,选择 "Configuration" 选项卡。 2. 在 "VM options" 字段中输入参数: ```bash @argfile ``` 3. 创建一个 `argfile` 文件,其中包含所有需要的参数,每行一个参数。 ### 命令行参数优化 如果上述方法不适用,可以尝试手动优化命令行参数,例如减少依赖库的数量或合并多个依赖库。 1. 检查项目的 `pom.xml` 或 `build.gradle` 文件,移除不必要的依赖。 2. 使用 Maven 或 Gradle 的依赖管理功能,合并多个依赖库。 ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值