IDEA 运行 ‘xxx‘ 时出错. 命令行过长. 通过 JAR 清单或通过类路径文件缩短命令行,然后重新运行.

IDEA 运行 ‘xxx’ 时出错. 命令行过长. 通过 JAR 清单或通过类路径文件缩短命令行,然后重新运行.

报错

今天写了个测试工具,结果直接在java类中运行main方法报错,讲一下如何解决和发生的原因

运行 ‘GeneralUtils’ 时出错
运行 GeneralUtils 时出错。命令行过长。
通过 JAR 清单或通过类路径文件缩短命令行,然后重新运行。
在这里插入图片描述

解决方案

jar清单

在这里插入图片描述

jar清单

在这里插入图片描述

报错原因:

这个错误通常是由于在运行Java程序时,命令行参数过长导致的。Java虚拟机(JVM)对命令行参数的长度有限制,当参数过长时,就会抛出“命令行过长”的错误。

1.使用JAR清单文件:

如果你是通过命令行运行一个JAR文件,你可以在JAR的清单文件(MANIFEST.MF)中指定主类,而不是在命令行中指定。这样,你可以减少命令行参数的长度。在清单文件中添加以下行:

Main-Class: com.example.GeneralUtils
然后,你可以使用以下命令运行JAR文件:

java -jar your_application.jar

2.使用类路径文件:

创建一个文本文件,例如classpath.txt,在其中列出所有的类路径条目,每行一个。然后,你可以使用-classpath或-cp选项来指定这个文件:

java -classpath @classpath.txt com.example.GeneralUtils

3.减少类路径长度:

检查你的类路径(CLASSPATH)是否包含了很多不必要的条目。移除不必要的条目可以减少命令行参数的长度。

4.使用环境变量:

将一些常用的路径设置为环境变量,然后在命令行中引用这些变量,而不是直接写路径。

5.使用模块系统:

Java 9及更高版本引入了模块系统。如果你使用的是这些版本,可以考虑将你的应用模块化,这样可以减少类路径的长度。

6.使用压缩的JAR或WAR文件:

如果你的应用是基于Web的,可以考虑将依赖的库打包到WAR文件中,这样可以减少类路径的长度。

7.使用构建工具:

如果你使用Maven或Gradle等构建工具,它们通常会处理依赖管理和打包,这样可以减少你需要在命令行中指定的参数。


👑 天下英雄出我辈,一入江湖岁月催
我是热爱生活的「 无间行者 」,努力把实践过的解决方案分享给大家
如果这篇文章对你有用,一键三连,感谢你的鼓励,让我知道你在看

请添加图片描述


  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
回答: 当你在运行主程序出现命令的错误,你可以尝试缩短命令或修改应用程序的默认配置。对于缩短命令,你可以考虑使用 Micronaut CLI 来创建应用程序,这样可以减少命令度。通过使用 mn create-app demo –build gradle 命令来创建一个新的应用程序。\[1\]此外,你还可以修改应用程序的默认配置,以减少命令度。例如,你可以调整应用程序的启动参数或配置文件,以减少命令中的参数数量。这样可以帮助你缩短命令并解决命令的问题。\[2\]在Linux系统中,你可以使用"help"和"man"命令来查询命令的使用方法和参数,以帮助你更好地理解和使用命令。\[3\]希望这些方法可以帮助你解决问题。 #### 引用[.reference_title] - *1* *2* [Java 云原生之路:Micronaut 框架](https://blog.csdn.net/ZHAOHUODIAN888/article/details/126511518)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Linux命令](https://blog.csdn.net/weixin_30530939/article/details/96770669)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

無间行者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值