执行Gradle bootRun报错CreateProcess error=206文件名过长问题求助
问题根因
该报错本质是Windows系统对命令行长度存在默认32767字符的上限,你的项目依赖较多,执行bootRun时拼接的classpath字符串超过了长度限制,最终触发CreateProcess error=206, 文件名或扩展名太长报错。
解决方案
方案1:修改build.gradle配置,开启Gradle原生的classpath缩短特性
在你的项目build.gradle文件中添加如下配置即可,适配你当前使用的Gradle 4.10.1版本:tasks.withType(JavaExec) { // 用manifest文件存储classpath,避免命令行拼接超长 shortenClasspath = 'manifest' }配置完成后重新执行
gradle bootRun命令即可。方案2:修改IDEA运行配置
如果你在IDEA中直接启动项目,可以用IDEA内置的缩短命令行能力:- 点击右上角bootRun对应的运行配置,选择「Edit Configurations」
- 点击「Modify options」,勾选「Shorten command line」选项
- 下拉选择「JAR manifest」选项,保存后重新运行即可
方案3:缩短项目存放路径
你当前的项目存放路径为D:\My Documents\HadI\Fairtech\michelin_sg,本身层级多长度长,可以将项目迁移到更短的根目录下(例如D:\proj\michelin_sg),减少基础路径的长度占用。方案4:升级Gradle版本
你当前使用的Gradle 4.10.1版本较老,升级到Gradle 6.0+版本后,默认对Windows平台的命令行长度问题做了自动适配,大部分场景下无需额外配置即可解决该问题。
内容的提问来源于stack exchange,提问作者Pavan Ejjada
相关产品推荐
相关产品推荐

