Различное поведение между командой 'npm run' и консолью Windows
Вот странная проблема, которой я страдаю уже несколько дней.
Мне нужно создать упакованный файл asar, сделанный с помощью электронной команды asar, например:
c:/asar pack app app.asar
Это упаковывает мою папку app в упакованный файл app.asar. Это работает хорошо.
Цель
Мне нужно включить эту инструкцию в мой файл сценария package.json, чтобы сгенерировать процесс сборки, объединяющий другие действия.
Эта проблема:
Ну, когда я запускаю эту команду, с помощью сценария package.json, как это c:/npm run create-asar
или либо с gulp-asar
процесс, он создает файл app.asar, но, кажется, поврежден.
Он не может быть распакован, процесс выдает ошибку и не может быть доступен приложению Electron
Я не могу понять, почему.
Я пытался запустить ту же самую команду из консоли, что и в package.json, точно такую же, и обе с результатами выше.
какая разница?
информация о версии
- нпм: v3.10.6
- узел: v4.5.0
- asar: v0.13.0
- электрон: v1.4.3
1 ответ
Установите asar локально как зависимость проекта, cd
в каталог вашего проекта и запустите:
$ npm install asar --save-dev
Измените свой npm-скрипт на следующий:
"scripts": {
"create-asar": "node_modules/.bin/asar pack app app.asar"
},
Замечания: asar
выполняется через местный node_modules/.bin
папка.
Тогда беги $ npm run create-asar
и впоследствии проверьте, успешно ли распаковывается.