'npm run'命令和windows控制台之间的不同行为
问题描述:
这是我忍受了几天的奇怪问题。'npm run'命令和windows控制台之间的不同行为
我需要创建一个ASAR打包文件,与电子做“ASAR”命令,就像这样:
c:/asar pack app app.asar
这包我的“应用程序”文件夹到压缩文件“应用.asar”。那运行正常。
我需要包括我的package.json脚本文件中该指令以产生一个构建过程,chainning其他行动的目标。
问题:
好吧,当我运行此命令,通过的package.json这样的脚本c:/npm run create-asar
或任一个gulp-asar
过程中,它会创建app.asar文件,但似乎是损坏。
它不能被解开,工艺抛出一个错误,无法通过电子应用
我想不通为什么来访问。
我试着从控制台运行完全相同的命令,在package.json中,完全一样,都与上述结果。
有什么区别?
版本信息
- NPM:v3.10.6
- 节点:V4.5.0
- ASAR:v0.13.0
- 电子:1.4.3
答
安装asar作为项目依赖项,cd
添加到您的项目目录并运行:
$ npm install asar --save-dev
更改npm-script以下几点:
"scripts": {
"create-asar": "node_modules/.bin/asar pack app app.asar"
},
注:asar
正在通过本地node_modules/.bin
文件夹执行。
然后运行$ npm run create-asar
并随后检查它是否成功解包。
+0
工作,所以它可能与另一个软件包或全局安装的软件包有关。谢了哥们。 –
也许你遇到问题没有。 [74](https://github.com/electron/asar/issues/74)有关早期版本中找到的_multibyte characters_。尝试将[asar](https://github.com/electron/asar)更新为新版本。该问题已在版本[0.12.3](https://github.com/electron/asar/blob/master/CHANGELOG.md#0123---2016-08-29)中修复。或者,如果更新不可行,则检查文件名/内容中的任何_multibyte个字符,并在初始打包之前更改它们。 – RobC
我会尝试更新一些软件包,我使用v0.13在asar上,但我会看看它。 –
仍然不起作用。我将用软件包版本更新问题。 –