'npm run' 命令和 windows 控制台之间的不同行为

Different behaviour between 'npm run' command and windows console

这是我困扰了好几天的一个奇怪问题。

我需要创建一个 asar 打包文件,用 electron "asar" 完成命令,像这样:

c:/asar pack app app.asar

这会将我的 "app" 文件夹打包成打包文件 "app.asar"。那是 运行宁可以。

目标

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

问题:

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

无法解压,进程报错,无法被electron app访问

我不明白为什么。

我已经尝试 运行 来自控制台的完全相同的命令,在 package.json 中,完全相同,并且都具有上述结果。

有什么区别?

版本信息

在本地安装 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然后查看是否解包成功