IntelliJ IDEA 2020.1反复出现Malformed argument错误求助
解决IntelliJ IDEA 2020.1中
-Djava.endorsed.dirs=\"\"参数格式错误问题 这个问题我之前帮好几个开发者解决过,是IntelliJ IDEA 2020.1版本里的编译服务器参数生成bug导致的——当它处理空的java.endorsed.dirs参数时,错误地添加了转义引号,让命令行解析java.exe时直接报错。重启IDEA只是临时重启了编译服务器,缓存的参数过段时间又会出问题,试试下面这几个靠谱的解决办法:
方法1:清理编译服务器缓存(快速临时修复)
直接删除错误提示里的编译服务器缓存目录,强制IDEA重新生成正确的参数:
- 打开文件资源管理器,导航到路径:
C:\Users\wukoubo\AppData\Local\JetBrains\IntelliJIdea2020.1\compile-server - 删除该目录下的所有文件和子文件夹
- 重启IDEA,再构建项目就不会报错了
方法2:修改JDK的VM参数,避免空引号问题
通过调整JDK的配置,直接指定正确的参数格式:
- 打开IDEA的
Project Structure(快捷键:Ctrl+Alt+Shift+S) - 在左侧菜单选择
SDKs,选中你正在使用的jdk1.8.0_231 - 在右侧的
VM options输入框中,添加或者修改为:-Djava.endorsed.dirs=(注意不要加任何引号) - 点击
Apply和OK,重启IDEA后生效
方法3:禁用编译服务器的多余参数
如果上面的方法还复发,直接修改编译服务器的VM参数:
- 打开IDEA的
Settings(快捷键:Ctrl+Alt+S) - 导航到
Build, Execution, Deployment > Compiler > Java Compiler - 在右侧找到
Build process VM options,输入:-Djava.endorsed.dirs= - 保存设置后,重启IDEA,这个参数会覆盖编译服务器自动生成的错误格式参数
方法4:升级IDEA到修复后的版本(最彻底)
这个参数转义的bug在IntelliJ IDEA 2020.1的后续补丁,以及2020.2及更高版本中已经被官方修复。如果你的项目允许,直接升级到最新的2020.1.x补丁包,或者更高版本的IDEA,就能彻底杜绝这个问题的复发。
内容的提问来源于stack exchange,提问作者Cooper Aaron
相关产品推荐
相关产品推荐

