首页 > 解决方案 > Raspberry Pi 上的 Rasbian 尝试在启动时运行 Electron 应用程序

问题描述

我试图在我的 Raspberry Pi 上启动时运行一个脚本,我需要npm run start在所有内容加载后最终运行才能启动我的 Electron 应用程序。如果我在终端中运行这个命令,它工作得很好,但是几个小时我一直在尝试使用 crontab、RC Local 和其他各种东西。

我的脚本没有运行。我可以验证我的 rc 本地文件确实在运行并且我的 sh 文件正在运行,但是 Electron 从未启动,我做错了什么?

#!/bin/sh
# start-jammer.sh
# navigate to the home directory, then to this directory, then execute python script, then back home

cd /
cd home/pi/Desktop/cockpit-tv-monitor
echo "about to run npm run start" > /tmp/rc_test.txt
npm run start

我得到了回声,但npm run start似乎永远不会启动我的电子应用程序,这个命令本质上是一个运行的别名electron .

更新 05/05 @ 09:58

npm run start使用以下方法将内容输出到一个简单的文本文件:

我得到的错误是:

> cockpit-tv-monitor@1.0.0 start
> electron .

A JavaScript error occurred in the main process
Uncaught Exception:
Error: Failed to get 'appData' path
    at App.c._setDefaultAppPaths (electron/js2c/browser_init.js:5:1300)
    at Object.<anonymous> (electron/js2c/browser_init.js:197:2129)
    at Object../lib/browser/init.ts (electron/js2c/browser_init.js:197:3540)
    at __webpack_require__ (electron/js2c/browser_init.js:1:128)
    at electron/js2c/browser_init.js:1:1200
    at electron/js2c/browser_init.js:1:1267
    at NativeModule.compileForInternalLoader (internal/bootstrap/loaders.js:283:7)
    at NativeModule.compileForPublicLoader (internal/bootstrap/loaders.js:225:10)
    at loadNativeModule (internal/modules/cjs/helpers.js:35:9)
    at Module._load (internal/modules/cjs/loader.js:747:15)
/home/pi/Desktop/cockpit-tv-monitor/node_modules/electron/dist/electron exited with signal SIGSEGV

即使在运行前添加了npm run start30 秒的延迟后,仍然会出现错误。

标签: node.jslinuxcronraspberry-pielectron

解决方案


你有没有尝试运行它

/home/pi/.xinitrc

只需创建该文件,然后插入

cd /home/pi/Desktop/cockpit-tv-monitor && npm run start &

重新启动并希望最好。


推荐阅读