gpt4 book ai didi

node.js - NodeJS child_process.execFile() 总是返回未知系统错误 193

转载 作者:太空宇宙 更新时间:2023-11-03 22:44:25 27 4
gpt4 key购买 nike

简单来说,我无法使用 child_process.execFile()。它总是在回调中包含错误。

child.js

console.log('I\'m child');

ma​​in.js

var cp = require('child_process');

cp.execFile('./child.js', function (err, stdout,stderr) {
console.log('Err: ',err);
console.log('STDerr: ',stderr);
});

回调中的错误对象是

{ [Error: spawn Unknown system errno 193]
code: 'Unknown system errno 193',
errno: 'Unknown system errno 193',
syscall: 'spawn' }

最佳答案

问题是 child.js 不是有效的可执行程序。如果您使用的是 Linux 或 Mac,您可以通过在 child.js 的最顶部编写以下内容来解决此问题:

#!/usr/bin/env node

然后您需要输入 chmod +x child.js 以使文件可执行。该行称为“shebang 行”,它告诉系统使用哪个解释器来运行文件的其余部分。您需要在 $PATH 中包含 Node 才能使其正常工作。

如果你不喜欢这样,或者不使用类 Unix 系统,你可以这样做:

cp.execFile('/some/path/to/node', ['./child.js'])

第一个参数必须是 Node 解释程序的完整路径(可能是 Windows 上的 node.exe,我不知道这是否重要)。

最后,如果您并不真正需要启动第二个 Node 解释器进程,那么所有这些都没有多大意义。您可以尝试将一个文件包含在另一个文件中 - 这里有一些想法:How do I include a JavaScript file in another JavaScript file?

关于node.js - NodeJS child_process.execFile() 总是返回未知系统错误 193,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22477111/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com