Electron with python 打包后无法运行

问题描述 投票:0回答:1

我正在打包一个在本地运行 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();
});
javascript python flask electron spawn
1个回答
0
投票

对于 Linux,您需要设置 cwd 选项:

spawn('./python-executable', [], {
        cwd: python-directory,
      });

对于 Windows 使用:

spawn('cmd.exe',['/c', path.join(python-directory, 'python-executable.exe')]);
© www.soinside.com 2019 - 2024. All rights reserved.