Node.js “npm run”命令和windows控制台之间的不同行为

Node.js “npm run”命令和windows控制台之间的不同行为,node.js,batch-file,npm,electron,asar,Node.js,Batch File,Npm,Electron,Asar,这是一个奇怪的问题,我已经忍受了好几天了 我需要创建一个asar压缩文件,使用electron asar命令完成,如下所示: c:/asar pack app app.asar 将我的应用程序文件夹打包到打包文件app.asar中。好的 目标 我需要在package.json脚本文件中包含此指令,以便生成构建过程,链接其他操作 问题是: 好的,当我运行这个命令时,通过package.json脚本,比如c:/npm运行create asar,或者使用gulp asar进程,它创建了app.asa

这是一个奇怪的问题,我已经忍受了好几天了

我需要创建一个asar压缩文件,使用electron asar命令完成,如下所示:

c:/asar pack app app.asar
将我的应用程序文件夹打包到打包文件app.asar中。好的

目标

我需要在package.json脚本文件中包含此指令,以便生成构建过程,链接其他操作

问题是:

好的,当我运行这个命令时,通过package.json脚本,比如c:/npm运行create asar,或者使用gulp asar进程,它创建了app.asar文件,但似乎已经损坏了

无法解包,进程抛出错误,electron应用程序无法访问

我不明白为什么

我尝试从控制台运行与package.json中完全相同的命令,完全相同,并且两者都具有上述结果

有什么区别

版本信息

npm:v3.10.6 节点:v4.5.0 asar:v0.13.0 电子:v1.4.3 以项目依赖项的形式在本地安装cd到项目目录并运行:

$npm安装asar-保存开发

将您的设置更改为以下内容:

脚本:{ 创建asar:node_modules/.bin/asar pack app.asar }, 注意:asar通过本地节点_modules/.bin文件夹执行


然后运行$npm run create asar并随后检查它是否成功解包。

也许您遇到了关于早期版本中多字节字符的问题编号。尝试更新到新版本。该问题已在版本中修复。或者,如果更新不可行,则检查文件名/内容中的任何多字节字符,并在初始打包之前对其进行更改。我将尝试更新一些包,我在asar上使用的是v0.13,但我会查看一下。仍然不起作用。我将用软件包版本更新这个问题。如果您运行的是v0.13,那么它就不是一个多字节字符问题。尝试将asar作为项目依赖项安装。也就是说,在项目目录中,运行npmi-dasar将其添加到package.json中的devdependences。然后更新您的npm脚本以创建asar:node_modules/.bin/asar pack app.asar。注意asar正在通过node_modules.bin文件夹运行。然后运行$npm run create asar,看看它是否成功解包。@RobC和您的指令一起工作!所以它应该是与另一个包相关的,我会尝试弄清楚它到底是什么,但请随意将其作为一个答案发布,我会将其标记为正确,因为它像一个charm.worked一样工作,所以它可能与另一个包相关,或者是一个全球安装的包。谢谢你,伙计。