我正在Ubuntu 17.10上运行此youtube tutorial,当我运行构建命令ng build --prod && electron .
时,结果是:
启动应用时出错 无法在/ home / ole / angular-electron
找到Electron app找不到模块'/ home / ole / angular-electron'
应用程序编译正常,只有失败的electron .
步骤。包含package.json
属性的main
内容如下所示:
"name": "angular-electron",
"version": "0.0.0",
"license": "MIT",
"main": "main.js",
我也试过运行命令,如第一个答案中所示,这就是结果:
ole@mki:~/angular-electron$ ng build --prod && npm run electron
Date: 2018-02-03T02:57:31.154Z
Hash: a2a64f9c18abdabf8e6e
Time: 25113ms
chunk {0} polyfills.f20484b2fa4642e0dca8.bundle.js (polyfills) 59.4 kB [initial] [rendered]
chunk {1} main.34c2037568943aee5abc.bundle.js (main) 152 kB [initial] [rendered]
chunk {2} styles.9c0ad738f18adc3d19ed.bundle.css (styles) 79 bytes [initial] [rendered]
chunk {3} inline.ef66fc99c35b976a47ae.bundle.js (inline) 1.45 kB [entry] [rendered]
> angular-electron@0.0.0 electron /home/ole/Junk/angular-electron
> electron .
Error launching app
Unable to find Electron app at /home/ole/Junk/angular-electron
Cannot find module '/home/ole/Junk/angular-electron'
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! angular-electron@0.0.0 electron: `electron .`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the angular-electron@0.0.0 electron script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/ole/.npm/_logs/2018-02-03T02_57_32_025Z-debug.log
ole@mki:~/Junk/angular-electron$ ng build --prod && npm run electron
Date: 2018-02-03T02:59:37.741Z
Hash: a2a64f9c18abdabf8e6e
Time: 25083ms
chunk {0} polyfills.f20484b2fa4642e0dca8.bundle.js (polyfills) 59.4 kB [initial] [rendered]
chunk {1} main.34c2037568943aee5abc.bundle.js (main) 152 kB [initial] [rendered]
chunk {2} styles.9c0ad738f18adc3d19ed.bundle.css (styles) 79 bytes [initial] [rendered]
chunk {3} inline.ef66fc99c35b976a47ae.bundle.js (inline) 1.45 kB [entry] [rendered]
> angular-electron@0.0.0 electron /home/ole/Junk/angular-electron
> electron .
Error launching app
Unable to find Electron app at /home/ole/Junk/angular-electron
Cannot find module '/home/ole/Junk/angular-electron'
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! angular-electron@0.0.0 electron: `electron .`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the angular-electron@0.0.0 electron script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/ole/.npm/_logs/2018-02-03T02_59_38_568Z-debug.log
ole@mki:~/Junk/angular-electron$ ng build --prod && npm run electron .
Date: 2018-02-03T03:01:35.087Z
Hash: a2a64f9c18abdabf8e6e
Time: 25017ms
chunk {0} polyfills.f20484b2fa4642e0dca8.bundle.js (polyfills) 59.4 kB [initial] [rendered]
chunk {1} main.34c2037568943aee5abc.bundle.js (main) 152 kB [initial] [rendered]
chunk {2} styles.9c0ad738f18adc3d19ed.bundle.css (styles) 79 bytes [initial] [rendered]
chunk {3} inline.ef66fc99c35b976a47ae.bundle.js (inline) 1.45 kB [entry] [rendered]
> angular-electron@0.0.0 electron /home/ole/Junk/angular-electron
> electron . "."
Error launching app
Unable to find Electron app at /home/ole/Junk/angular-electron
Cannot find module '/home/ole/Junk/angular-electron'
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! angular-electron@0.0.0 electron: `electron . "."`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the angular-electron@0.0.0 electron script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/ole/.npm/_logs/2018-02-03T03_01_35_948Z-debug.log
还尝试使用electron .
单独运行电子命令。结果是一样的。它抱怨找不到electron
。还尝试从node_modules
目录运行它,如下所示:
ole @ mki:〜/ angular-electron $ ./node_modules/electron/dist/electron。 启动应用时出错 无法在/ home / ole / angular-electron
找到Electron app找不到模块'/ home / ole / angular-electron'
思想?
答案 0 :(得分:5)
首先安装电子作为开发依赖,就像你使用npm i --save-dev electron
一样。然后像这样设置构建脚本:
"electron": "electron",
"electron-build": "ng build --prod && npm run electron"
电子没有运行的原因是它在电子运行脚本中包含一个.
,就像这样`"电子":"电子。"。
修改
我认为这应该足够了:
$ npm run electron
您无需编辑package.json
。 npm
会尝试在您的electron
中找到node_modules/.bin
,然后搜索您的全局依赖关系。
尽量避免安装全局npm
依赖项。如果您正在安装命令行工具,因为您的项目需要它,那么始终在本地安装它。
答案 1 :(得分:1)
如果您使用@ angular / cli~1.4.0,请确保main.js
和package.json
位于同一文件夹中。
<root>/src
index.html
main.ts
main.js
package.json