小编Arm*_*man的帖子

“GPU 进程无法使用。再见。”

我正在尝试使用 Electron 构建 Windows 和 Mac OS 应用程序,但遇到了障碍。

简而言之,如果我尝试在 Mac OS Big Sur 上直接使用 Electron 运行应用程序(而不是构建 Mac 应用程序然后运行它),我会返回以下错误:

[35941:0821/171720.038162:FATAL:gpu_data_manager_impl_private.cc(415)] GPU process isn't usable. Goodbye.
Run Code Online (Sandbox Code Playgroud)

我使用以下命令直接使用 Electron 运行package.json

"scripts": {
  ...
  "test": "electron main.js",
  ...
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,我可以访问的唯一 Mac 操作系统环境是 Big Sur,因此还没有在早期版本的 Mac 操作系统上尝试过此操作,但从谷歌搜索看来,此错误可能与 Big Sur 加强的安全性/沙箱限制有关 - 但我猜测关于那个。

无论如何,经过一些谷歌搜索后,一些建议表明尝试在没有应用程序沙箱的情况下运行,即将其添加到main.js

app.commandLine.appendSwitch('no-sandbox');
Run Code Online (Sandbox Code Playgroud)

这一切都很好并且有效。

但是,如果我想构建和分发针对 Mac 应用商店的签名 Mac 应用程序或只是签名的沙盒 DMG 或 PKG 安装程序,那么这将不适合。

如果我删除上述no-sandbox命令main.js并在我的权利中指定应用程序沙箱,plist如下所示,生成的签名应用程序将不会运行:

<key>com.apple.security.app-sandbox</key>
<true/>
Run Code Online (Sandbox Code Playgroud)

该应用程序尝试打开并关闭。我可以尝试在命令行中运行,open <appname>.app但这会在控制台中引发以下错误:

The application cannot be …
Run Code Online (Sandbox Code Playgroud)

macos electron electron-builder

19
推荐指数
2
解决办法
3万
查看次数

标签 统计

electron ×1

electron-builder ×1

macos ×1