如何解决如何独立于终端运行Electron应用程序? 解决方法
我正在寻找一种独立于终端本身运行电子应用程序(npm start
命令)的方法。这意味着我希望即使终端关闭,Electron应用程序也可以继续运行。
我不确定是否可以。
我已经尝试过cd electron-directory-path && nohup npm start &
,但这可以使我将终端实例用于其他命令,并防止任何电子消息在终端中弹出。但是,关闭终端仍然会杀死Electron应用程序。
即使cd electron-directory-path && npm start &
做同样的事情,但是我还没有找到一种完全独立于终端实例来运行Electron应用程序的方法...
解决方法
您通过nohup npm start &
启动了Electron应用程序,但是当关闭终端窗口时,Electron应用程序也会终止(与预期相反)。
我可以重现该行为,但并非始终如此。在大约30%的实验中,Electron应用并未终止。我还无法找到导致这种变化的原因。
解决方法
以下解决方法将在不终止Electron应用程序的情况下关闭终端。在我的测试中,它每次都有效:
-
像以前一样启动Electron应用程序:
nohup npm start &
-
通过发出
关闭运行中的终端nohup kill $$ &
$$
给出当前进程ID。 请注意,kill $$
不起作用。
如果您不一定需要从终端运行,也可以create a desktop file to start the app。
,让pathname
为节点应用位置的路径。
只需使用命令:
cd pathname && npm start && ^Z &
cd
将目录更改为我们需要执行终端命令的目录。&&
表示此命令之后还有其他命令要执行。npm start
启动npm应用^Z
暂停在终端中运行的进程,从而断开节点的终端部分与原始应用的连接。&
表示我们不希望终端等待命令执行。
现在我们可以关闭终端了,电子应用程序应该继续运行...!
积分:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。