idea启动报错:Command line is too long问题

 更新时间:2024年09月23日 09:51:32   作者:勞業炟  
在使用IDEA时,若遇到"Commandlineistoolong"错误,通常是因为命令行长度超限,这是因为IDEA通过命令行或文件将classpath传递至JVM,操作系统对命令行长度有限制,解决方法是切换至动态类路径,通过修改项目的workspace.xml文件

idea启动报错:Command line is too long

idea启动项目报错如上:

这是因为命令行太长的原因导致SpringBoot和整个应用无法成功启动。

问题分析

其实IDEA底层是通过命令行或者文件的方式将classpath传递到Java的JVM虚拟机上的,而大多数的操作系统都会有命令行的最大长度限制,超过这个限定值时就会导致IDEA无法启动当前程序。

错误解决

当命令行长度大于32768个字符时,将IDEA切换到动态类路径。

长类路径被写入文件,然后由应用程序启动器读取并通过系统类加载器加载。

我们可以将项目修改成动态加载项目路径

首先找到对应项目的workspace..xml文件

其次找到文件中的PropertiesComponent组

在其中添加

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

修改完成之后,可以重启项目。

如何仍然不行

可以进行以下操作

找到idea的配置启动类的位置,点击edit configuration选项

即可查看当前页面

按照项目需求更改对应的JRE信息,并修改shorten command line配置。

"shorten command line"配置项通常用于软件开发工具或者编译器中,用来指定一种机制,以缩短生成的可执行文件的命令行长度。

具体来说,"shorten command line"配置项通常用于编译器或链接器的命令行工具中。

通过设置这个配置项,开发者可以指示编译器或链接器在构建可执行文件时采取特定的策略来缩短命令行长度,以避免"Command line is too long"等错误。

  • 1.路径简写:将长路径简写成相对路径或者其他更短的路径表示方式。
  • 2.参数合并:将多个相同类型的参数合并成一个,以减少命令行长度。
  • 3.使用文件列表:将参数列表保存到一个文件中,然后在命令行中使用文件列表的方式传递参数。
  • 4.符号链接:对于需要传递的大量文件或目录,可以使用符号链接来代替实际路径。

方法二

如果以上方法不适用 可以使用以下方法:

点击edit configuration

修改shorten command line属性为 JAR manifest属性。

重新启动即可

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • SpringMVC mybatis整合实例代码详解

    SpringMVC mybatis整合实例代码详解

    这篇文章主要介绍了springmvc与mybatis实例详解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-04-04
  • Spring声明式事务@Transactional知识点分享

    Spring声明式事务@Transactional知识点分享

    在本篇文章里小编给大家整理了关于Spring声明式事务@Transactional详解内容,需要的朋友们可以参考下。
    2020-02-02
  • SpringBoot整合EasyExcel 3.x的完整示例

    SpringBoot整合EasyExcel 3.x的完整示例

    EasyExcel 是一个基于 Java 的、快速、简洁、解决大文件内存溢出的 Excel 处理工具,它能让你在不用考虑性能、内存的等因素的情况下,快速完成 Excel 的读、写等功能,这篇文章主要介绍了SpringBoot整合EasyExcel3.x的过程,需要的朋友可以参考下
    2023-07-07
  • 深入分析RabbitMQ中死信队列与死信交换机

    深入分析RabbitMQ中死信队列与死信交换机

    这篇文章主要介绍了RabbitMQ中死信队列与死信交换机,死信队列就是一个普通的交换机,有些队列的消息成为死信后,一般情况下会被RabbitMQ清理,感兴趣想要详细了解可以参考下文
    2023-05-05
  • java web中 HttpClient模拟浏览器登录后发起请求

    java web中 HttpClient模拟浏览器登录后发起请求

    这篇文章主要介绍了java web中 HttpClient模拟浏览器登录后发起请求的相关资料,需要的朋友可以参考下
    2017-05-05
  • Spring Boot配置AOP打印日志的全过程

    Spring Boot配置AOP打印日志的全过程

    这篇文章主要给大家介绍了关于Spring Boot配置AOP打印日志的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring Boot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • Java接口统一样式返回模板的实现

    Java接口统一样式返回模板的实现

    这篇文章主要介绍了Java接口统一样式返回模板的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • springBoot整合shiro如何解决读取不到@value值问题

    springBoot整合shiro如何解决读取不到@value值问题

    这篇文章主要介绍了springBoot整合shiro如何解决读取不到@value值问题,具有很好的参考价值,希望对大家有所帮助,
    2023-08-08
  • Spring+MongoDB实现登录注册功能

    Spring+MongoDB实现登录注册功能

    这篇文章主要为大家详细介绍了Spring+MongoDB实现登录注册功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • springBoot2.X配置全局捕获异常的操作

    springBoot2.X配置全局捕获异常的操作

    这篇文章主要介绍了springBoot2.X配置全局捕获异常的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07

最新评论