You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ运行Maven项目报错‘Command line is too long’及代码更新不生效求助

解决IntelliJ 2018.1.1中Maven项目的「Command line is too long」及JAR Manifest不更新问题

我来帮你搞定这两个关联的问题,给你两种思路,按需选择:

一、换个方式解决「Command line is too long」(避免JAR Manifest的更新问题)

其实不用切换到JAR Manifest也能解决命令行过长的问题,而且能彻底避开后续的代码不更新麻烦:

  • 打开你的Run/Debug Configurations,找到对应main类的运行配置
  • 切换到「Configuration」标签页,找到「Shorten command line」下拉选项
  • 选择「Classpath file」(对Java 8及以下版本也兼容)或者「@argfile (Java 9+)」
  • 点击「Apply」保存配置,再重新运行项目。这样既解决了命令行过长的问题,IntelliJ也会实时编译你的代码修改,完全不会依赖预生成的JAR

二、如果坚持用JAR Manifest,修复代码不更新的问题

要是你更倾向用JAR Manifest的方式,那可以通过以下步骤让IntelliJ识别代码修改:

  • 确保Maven自动同步:打开IntelliJ右侧的Maven工具窗口,勾选「Auto-Import」,这样代码和依赖的变更会被及时追踪
  • 调整运行配置的前置步骤:
    1. 打开Run/Debug Configurations,找到你的配置
    2. 切换到「Before launch」标签页
    3. 确保添加了「Build」步骤,并且把它放在所有构建 artifact 的步骤之前(如果有的话)
    4. 如果之前有手动生成JAR的步骤,改成先编译再生成JAR,或者直接移除,让IntelliJ每次运行前重新编译并生成新的Manifest JAR
  • 清理构建缓存:
    1. 点击顶部菜单栏的「File」→「Invalidate Caches / Restart」
    2. 选择「Invalidate and Restart」,清空旧的编译缓存和JAR文件,重启后IntelliJ会重新构建项目
  • 检查编译输出目录:
    1. 打开「File」→「Project Structure」→「Modules」→「Paths」
    2. 确认「Output path」和「Test output path」是正确的项目编译目录,且没有被设置为只读或被其他进程占用
  • 手动触发全量构建:每次修改代码后,点击「Build」→「Rebuild Project」,再运行main方法,确保新代码被编译并更新到Manifest JAR里

内容的提问来源于stack exchange,提问作者zooes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 10:00:10