我正在打包一个在本地运行 Flask 服务器的 Electron 桌面应用程序。每当我尝试运行从项目创建的独立应用程序时,我都会收到以下错误。当我使用 npm run 运行项目时,我没有收到此错误,并且后端工作正常。这个错误是最近发生的,并且后端的 python 到目前为止一直工作得很好。任何帮助将不胜感激!
Uncaught Exception:
Error: spawn python3.11 ENOENT
at ChildProcess._handle.onexit (node:internal/child_process:286:19)
at onErrorNT (node:internal/child_process:484:16)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
JS代码
app.whenReady().then(() => {
const expressProcess = spawn('python3.11', [path.join(__dirname, 'server', 'test.py')]);
expressProcess.stdout.on('data', (data) => {
console.log(`Flask Output: ${data}`);
});
expressProcess.stderr.on('data', (data) => {
console.error(`Flask Error: ${data}`);
});
app.dock && app.dock.setIcon(path.join(__dirname, 'images', 'Logo.png'));
createWindow();
});
对于 Linux,您需要设置 cwd 选项:
spawn('./python-executable', [], {
cwd: python-directory,
});
对于 Windows 使用:
spawn('cmd.exe',['/c', path.join(python-directory, 'python-executable.exe')]);