![](/img/trans.png)
[英]'npm' is not recognized as internal or external command, operable program or batch file
[英]Azure: Why do I get 'npm' is not recognized as an internal or external command, operable program or batch file
我正在嘗試通過BitBucket將node.js API部署到Azure Web Apps。 在添加需要在安裝后進行編譯的私有存儲庫之前,該過程運行良好。
我正在使用postinstall-build npm軟件包運行babel-cli后安裝程序,以在私有npm存儲庫中將es2015代碼編譯為es5。
這在我的開發機器上完美運行,但是Azure出於某些愚蠢的原因無法識別npm,即使它實際上是在安裝其他軟件包。
這是日志的一部分:
...
> dtrace-provider@0.6.0 install D:\home\site\wwwroot\node_modules\dtrace-provider
> node scripts/install.js
> js-models@0.0.2 postinstall D:\home\site\wwwroot\node_modules\private-repo
> postinstall-build lib 'npm run compile'
{ [Error: Command failed: 'npm
''npm' is not recognized as an internal or external command,
operable program or batch file.
] killed: false, code: 1, signal: null, cmd: '\'npm' }
787-api@0.0.1 D:\home\site\wwwroot
npm ERR! Windows_NT 6.2.9200
...
這是package.json中的“ postinstall”腳本
"postinstall": "postinstall-build lib 'npm run compile'"
和“編譯”腳本:
"compile": "babel --presets es2015,stage-0 --plugins add-module-exports -d lib/ src/",
因此,我們甚至快要運行“ postinstall”腳本這一事實告訴我,npm確實存在並且正在執行操作,但是出於某種原因,當“ postinstall”腳本運行時,必須在不同的shell中執行它,或者的東西。
還有其他人遇到過這種情況嗎,有沒有解決的辦法?
要從私有存儲庫安裝節點模塊,您可以嘗試在BitBucket上設置SSH deploy key
,請遵循以下部分: For private repos, set up a deploy key
私有倉庫,請For private repos, set up a deploy key
Kudu Wiki For private repos, set up a deploy key
以進行連續部署,並參見在BitBucket上使用部署密鑰的圖。
這似乎與另一個問題有關。 我的問題已通過此處描述的解決方案解決: LUIS-app:嘗試安裝“ Kudu Sync”時,“ npm”未被識別為內部或外部命令
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.