Node JS无法执行asar存档

时间:2016-12-07 14:24:20

标签: javascript node.js asar

非常简单。我在Windows 8上,我使用asar模块打包包含节点应用程序的文件夹。

我跑node app.asar并收到错误

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

在哪里?显然是一个无效的角色。

为什么这个存档包含无效字符如果我可以在打包之前运行应用程序而没有问题,并且asar存档应该对nodejs进程可读

1 个答案:

答案 0 :(得分:3)

你不能像普通的Nodejs应用程序一样运行asar压缩文件,因为asar是为Electron设计的,而不是普通的Nodejs应用程序。但!尝试将电子安装为项目依赖项或仅安装普通模块

npm install electron

或全球安装

npm install -g electron

所以你不必在你必须运行压缩的asar文件的每个项目上重新安装它

并注意一些事项:安装Electron会有点长,因为它不是正常的模块

完成安装后,请尝试

electron file.asar

并在应用程序作为普通nodejs app运行时测试它

编辑: 也许在不久的将来某个时候你想尝试打包你的" Nodejs App" asar所以客户不会看到您的源代码,然后将其部署到您的客户端

这是发布您的Electron App的电子方式(但也许,它也可以用于其他应用程序) GitHub Link