文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Command line is too long

2023-09-07 15:27

关注

目录

一、遇到的问题

二、使用环境

三、问题分析

四、解决方案

1、解决方式一

2、解决方式二


一、遇到的问题

上周五,我要改造一个之前从未接触过的 SpringBoot 项目。我用 git 拉下代码后,试图使用 Idea 运行它。但是,Idea 在运行时抛出了一个问题:Error running 'Application': Command line is too long. Shorten command line for Application or also for Application default configuration?

该问题一般会在新项目或者从未接触过的项目上出现。虽然网上有很多的解决方案,但很多解决方案都已经过时。并且这些方案也没有讲清问题的原因,所以我打算先用一个简单的 SpringBoot 项目模拟出该问题,再解决它,这样就很容易分析该问题。我觉得有必要写一篇文章记录这个过程,也可以帮助到遇到该问题的开发者。

24511bd83466435591485d3a62c3ce71.png

二、使用环境

我使用的操作系统是 Windows, Idea 的版本是:IntelliJ IDEA 2020.3.1 (Community Edition)

如果你遇到了该问题,先看一下你使用的 Idea 是多少版本的。2017.3 及以后的版本都可以使用该方法解决问题,如果你是 2017.3 之前的版本,我建议你升级 Idea ,尽量使用新版本的 Idea 。

31cc4dbcb9d84090897f9f33ac1a6d22.png

三、问题分析

我先问一个问题,在 Idea 中点击运行按钮后,Idea 会调用哪些命令?

当我们点击运行程序的按钮,Idea 会先调用 javac 命令编译程序,再调用 java 命令运行程序。

现在,分析一下错误:Error running 'Application': Command line is too long 。这个错误说的很明确,运行程序时报错,命令行太长了,而运行程序的命令就是上面说的 java 命令。最后的结论是,运行 java 的命令行太长。一般来说,操作系统有命令行长度限制,超过限制的长度就会执行失败。

下面来证明我的结论,在 Idea 中运行程序,控制台中打印的第一行日志如下图中红框所示:

99c207fe856148cca0e35d37a083d8ac.png

c3ace0edaf9949af92f59d3f6a740d73.png

该行日志就是使用 java 命令运行程序,点开后可以看到后面跟有 -javaagent、classpath 等参数。如果 classpath 中包含的 jar 包过多,可能导致命令行过长。

四、解决方案

既然知道了是 java 命令行太长,导致运行程序失败。只要缩短命令行就可以解决该问题,Idea 2017.3 之后的版本提供了缩短命令行的配置。如下有两种解决方式,方式一和方式二的原理一样,都是配置缩短命令行。方式一和方式二的区别在于方式一是按步骤配置,方式二是快速配置。

1、解决方式一

先打开 Run/Debug Configurations 面板。再点击 Modify options ,选择 Shorten command line ,再选择 JAR manifest 或者 classpath file 就可以解决问题。

示意图如下所示:

216a686158654ad3a2686893f1745cd0.png

cf5940edee494b9cb9af6240fda85eba.png

eed2c76870ac4b34bdf4fa237ab3e446.png

2、解决方式二

如果你的 Idea 弹出报错信息如下图所示,直接点击蓝色的 JAR manifest 或者 classpath file 可以快速配置,再次运行程序就不会再报错了。

c48e91c839154d8a974ebe4bb9ccdc6e.png

来源地址:https://blog.csdn.net/keyboard_/article/details/127722234

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯