2015-02-07 304 views
1

我正在尋找最佳解決方案,如何安裝npm包,而不包含它在package.json文件中描述的依賴關係。安裝npm包無依賴關係

目標是在安裝包之前更改依賴項的版本。我可以通過下載源代碼爲一個軟件包手動執行此操作,但是如果您有很多嵌套的依賴關係,則會成爲問題。

+2

這是一個獨特的問題,我懷疑有一種方法或工具可以做到這一點。你必須自己編碼,很可能。 [安裝後腳本](https://docs.npmjs.com/misc/scripts)可能會對您有所幫助。 – laggingreflex 2015-02-07 14:23:29

回答

5

這是一個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

+0

如果你有自己的npm註冊表;用一個變量替換'https:// registry.npmjs.org',例如'$ {regurl}',並將它作爲參數傳遞,例如'regurl = 「$ 2」' – 2016-11-13 08:53:15

相關問題