我正在尋找最佳解決方案,如何安裝npm包,而不包含它在package.json文件中描述的依賴關係。安裝npm包無依賴關係
目標是在安裝包之前更改依賴項的版本。我可以通過下載源代碼爲一個軟件包手動執行此操作,但是如果您有很多嵌套的依賴關係,則會成爲問題。
我正在尋找最佳解決方案,如何安裝npm包,而不包含它在package.json文件中描述的依賴關係。安裝npm包無依賴關係
目標是在安裝包之前更改依賴項的版本。我可以通過下載源代碼爲一個軟件包手動執行此操作,但是如果您有很多嵌套的依賴關係,則會成爲問題。
這是一個shell腳本,它似乎能夠幫助您獲取所需的解壓縮文件。
#!/bin/bash
package="$1"
version=$(npm show ${package} version)
archive="${package}-${version}.tgz"
curl --silent --remote-name \
"https://registry.npmjs.org/${package}/-/${archive}"
mkdir "${package}"
tar xzf "${archive}" --strip-components 1 -C "${package}"
rm "${archive}"
保存爲npm_download.sh
,並與包的名稱來運行它,你想:
./npm_download.sh pathval
如果你有自己的npm註冊表;用一個變量替換'https:// registry.npmjs.org',例如'$ {regurl}',並將它作爲參數傳遞,例如'regurl = 「$ 2」' – 2016-11-13 08:53:15
請檢查simialr quesition上stackexchange:https://unix.stackexchange.com/questions/168034/is-there-an-option-to-install-an-npm-package-without-dependencies
我的解決辦法是重新命名包.json安裝前的package.bak,然後在之後恢復重命名:
RENAME package.json package.bak
npm install <package_name> --no-save
RENAME package.bak package.json
這是一個獨特的問題,我懷疑有一種方法或工具可以做到這一點。你必須自己編碼,很可能。 [安裝後腳本](https://docs.npmjs.com/misc/scripts)可能會對您有所幫助。 – laggingreflex 2015-02-07 14:23:29