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

Java中执行Node.js命令报错:无法找到指定文件

Java中执行Node.js命令报错:无法找到指定文件

嘿,这个问题我碰到过好多次啦!你踩的坑其实是ProcessBuilder的基础用法错误——你把整个node --version命令当成单个字符串传给了ProcessBuilder,但它的构造逻辑是命令和参数要分开传,不能混在一起。

为什么会报错呢?因为Windows的CreateProcess会把你传入的整个字符串当成「要执行的程序文件名」,而不是去识别这是node程序加上--version参数。系统里肯定没有一个叫node --version的文件,所以就会抛出那个"无法找到指定文件"的错误啦。

给你改好的正确代码:

ProcessBuilder pb = new ProcessBuilder("node", "--version");

pb.redirectOutput(ProcessBuilder.Redirect.INHERIT);
pb.redirectError(ProcessBuilder.Redirect.INHERIT);

Process p = pb.start();

另外补充个小提醒:如果你的Node.js没有配置到系统PATH环境变量里,那你得把node换成完整的安装路径,比如"C:\\Program Files\\nodejs\\node.exe",这样系统才能准确定位到程序。

备注:内容来源于stack exchange,提问作者podoshva

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.20 10:49:28