web-dev-qa-db-fra.com

npm run build donne npm ERR! code ELIFECYCLE

Je suis très nouveau sur Node.js et Electron et je voulais exécuter npm run build. Malheureusement, cela ne me donne que le code d'erreur ELIFECYCLE.

Voici mon package.json:

{
    "name": "firstelectronproject",
    "version": "0.1.0",
    "description": "My first Electron project",
    "main": "main.js",
    "scripts": {
        "start": "electron index.js",
        "package": "",
        "build": "electron-packager . FEP"
    },
    "author": "F9lke <florian.thomasgoetzrath.de>",
    "license": "MIT",
    "dependencies": {
        "electron": "^1.6.11"
    },
    "devDependencies": {
        "asar": "^0.13.0",
        "electron-packager": "^8.7.2"
    }
}

Voici le journal de mon invite de commande:

 D:\Eigene Dateien\Desktop\Coding\Desktop Apps\FEP>npm run build

> [email protected] build D:\Eigene Dateien\Desktop\Coding\Desktop Apps\FEP
> electron-packager . FEP

Packaging app for platform win32 x64 using electron v1.6.11
Command failed: npm Prune --production
npm WARN invalid config loglevel="notice"
npm WARN [email protected] No repository field.

npm ERR! May not delete: C:\Users\User\AppData\Local\Temp\electron-packager\win32-x64\FEP-win32-x64\resources\app\node_modules\.bin

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\User\AppData\Roaming\npm-cache\_logs\2017-07-21T11_38_37_230Z-debug.log

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] build: `electron-packager . FEP`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] build 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!     C:\Users\User\AppData\Roaming\npm-cache\_logs\2017-07-21T11_38_37_293Z-debug.log  

Et voici la sortie du journal:

0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'C:\\Users\\User\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'build' ]
2 info using [email protected]
3 info using [email protected]
4 verbose run-script [ 'prebuild', 'build', 'postbuild' ]
5 info lifecycle [email protected]~prebuild: [email protected]
6 info lifecycle [email protected]~build: [email protected]
7 verbose lifecycle [email protected]~build: unsafe-perm in lifecycle true
8 verbose lifecycle [email protected]~build: PATH: C:\Users\User\AppData\Roaming\npm\node_modules\npm\bin\node-gyp-bin;D:\Eigene Dateien\Desktop\Coding\Desktop Apps\FEP\node_modules\.bin;C:\Program Files (x86)\Razer Chroma SDK\bin;C:\Program Files\Razer Chroma SDK\bin;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Windows\system32\config\systemprofile\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Brackets\command;C:\Program Files\nodejs\;C:\Users\User\AppData\Local\Microsoft\WindowsApps;C:\Users\User\AppData\Local\atom\bin;C:\Users\User\AppData\Roaming\npm
9 verbose lifecycle [email protected]~build: CWD: D:\Eigene Dateien\Desktop\Coding\Desktop Apps\FEP
10 silly lifecycle [email protected]~build: Args: [ '/d /s /c', 'electron-packager . FEP' ]
11 silly lifecycle [email protected]~build: Returned: code: 1  signal: null
12 info lifecycle [email protected]~build: Failed to exec build script
13 verbose stack Error: [email protected] build: `electron-packager . FEP`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (C:\Users\User\AppData\Roaming\npm\node_modules\npm\lib\utils\lifecycle.js:289:16)
13 verbose stack     at emitTwo (events.js:106:13)
13 verbose stack     at EventEmitter.emit (events.js:191:7)
13 verbose stack     at ChildProcess.<anonymous> (C:\Users\User\AppData\Roaming\npm\node_modules\npm\lib\utils\spawn.js:40:14)
13 verbose stack     at emitTwo (events.js:106:13)
13 verbose stack     at ChildProcess.emit (events.js:191:7)
13 verbose stack     at maybeClose (internal/child_process.js:891:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
14 verbose pkgid [email protected]
15 verbose cwd D:\Eigene Dateien\Desktop\Coding\Desktop Apps\FEP
16 verbose Windows_NT 10.0.15063
17 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\User\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "run" "build"
18 verbose node v6.11.1
19 verbose npm  v5.3.0
20 error code ELIFECYCLE
21 error errno 1
22 error [email protected] build: `electron-packager . FEP`
22 error Exit status 1
23 error Failed at the [email protected] build script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
4
F9lke

J'ai résolu ce problème en installant le tableau unique et il a commencé à fonctionner:

npm install --save array-unique
1
Saad Ahmad

La mise à jour de npm sur le serveur a fonctionné pour moi.

1
naeemjawaid

Cela semble être lié à un bogue dans electron-packager. Pour contourner ce problème, vous pouvez rétrograder electron-packager à par exemple ^7.7.0. De plus, vous devez mettre à jour légèrement la commande build, voir ci-dessous (Remarque, ne montrant que les parties pertinentes):

{
  "scripts": {                                                 
    "build": "electron-packager ./ --platform=linux --Arch=x64"
  },                                                           
  "dependencies": {                                            
    "electron": "^1.6.11"                                      
  },                                                           
  "devDependencies": {
    "electron-packager": "^7.7.0"                              
  }                                                            
}                                                              

Notez que vous pouvez utiliser --all à construire pour toutes les plateformes.

1
ralphtheninja