2016-12-07 1 views
0

Ziemlich einfach. Ich bin auf Windows 8, ich habe das Asar-Modul verwendet, um einen Ordner mit einer Knoten-App zu packen.Node JS kann asar Archiv nicht ausführen

lief ich node app.asar und bekam den Fehler

SyntaxError: Unexpected token ILLEGAL at exports.runInThisContext (vm.js:53:16) "(function (exports, require, module, __filename, __dirname) { ?"

wo? ist eindeutig ein ungültiger Charakter.

Warum ist das Archiv ungültige Zeichen enthalten, wenn ich die App ohne Probleme laufen kann es vor dem Verpacken und asar Archive sind angeblich lesbar zu einem NodeJS Prozess

Antwort

1

Sie nicht asar gepackte Datei als normale NodeJS App ausgeführt werden können, das ist weil asar für Electron entworfen wurde, nicht für normale Nodejs App. ABER! Versuchen Sie, das Elektron als Projektabhängigkeit zu installieren oder nur gewöhnliche Module

npm install electron 

oder installieren Sie es global

npm install -g electron 

so müssen Sie nicht neu installieren Sie es auf jedem Projekt, das Sie die gepackte laufen müssen asar Datei

und einiger Hinweis: Installation Electron etwas länger ist, weil es nicht normal Module ist

, nachdem Sie mit der Installation getan haben, versuchen Sie

electron file.asar 

und testen, ob die App als normale NodeJS App laufen

EDIT: vielleicht einige Zeit in naher Zukunft versuchen Sie möchten, dass Ihre "NodeJS App" mit asar so die clien't wouldn zu verpacken‘ t Ihren Quellcode, und dann stellen sie es auf Ihren Client

hier ist die Elektronen Art und Weise Ihre Electron App zu veröffentlichen (aber vielleicht kann es für eine andere App als auch verwendet werden) GitHub Link

+0

Danke für die Antwort . Leider muss der Knotenprozess als Dienst ausgeführt werden, und das weigert sich, dies zu tun. Ich habe seit andere Lösungen gefunden –

+0

@DanielOlivier froh zu hören, dass Sie die Lösung haben – deanrihpee