我为我的兄弟创建了一些代码,希望使用他的 node.js 后端的 python 函数。在我的 ubuntu 计算机上运行它时,它可以工作 - 但是!在他的 Windows 机器上运行代码时,它会给出这个堆栈跟踪。
events.js:174
throw er; // Unhandled 'error' event
^
Error: spawn python ENOENT
at Process.ChildProcess._handle.onexit (internal/child_process.js:240:19)
at onErrorNT (internal/child_process.js:415:16)
at process._tickCallback (internal/process/next_tick.js:63:19)
at Function.Module.runMain (internal/modules/cjs/loader.js:757:11)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
Emitted 'error' event at:
at Process.ChildProcess._handle.onexit (internal/child_process.js:246:12)
at onErrorNT (internal/child_process.js:415:16)
[... lines matching original stack trace ...]
at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
这是 node.js 文件
const spawn = require("child_process").spawn;
const pythonProcess = exec('python',["./script.py", 2, 4]);
pythonProcess.stdout.on('data', function(data) {
console.log(data.toString('utf-8'))
} )
这是 script.py 文件
import sys
print("work with me please")
sys.stdout.flush()
有很多人有这样的问题,但是所有的答案似乎都对特定的人来说过于具体了。一些提到路径变量,一些 npm.cmd 和其他一些第三。
我应该如何解决这种特殊情况?
编辑:
我已经尝试过 npm init、npm install、围绕移动代码谷歌搜索和更改 cmd 和目录的范围等进行资助。