簡體   English   中英

在Python virtualenv中安裝npm包

[英]Install npm packages in Python virtualenv

我想在Python virtualenv中安裝一些npm軟件包。 例如:

到目前為止,我只找到了在virtualenv中安裝這些東西的復雜方法:為它們創建一個python包。

有沒有更簡單的方法來在Python virtualenv中安裝npm軟件包?

NPM和pip彼此無關,因此您將無法在virtualenv中安裝NPM包。

但是: NPM在./node_modules安裝軟件包

所以如果你創建了virtualenv並在其中安裝了npm模塊

virtualenv myproj
cd myproj
source bin/activate
npm install pdfjs-dist jquery-ui

你將最終獲得myproj/node_modules的節點包,這與“在virtualenv中安裝NPM”非常接近。

您可以使用nodeenv在python virtuaenv上安裝NPM軟件包。

source ./bin/activate
pip install nodeenv
nodeenv -p

測試是否有效:

npm install -g npm
npm -v

資料來源:

https://pypi.org/project/nodeenv/

https://calvinx.com/2013/07/11/python-virtualenv-with-node-environment-via-nodeenv/

正如@Josir建議的那樣,我過去使用過nodeenv ,但是當我想在項目的venv文件夾中包含節點模塊時,我遇到了一個問題,如本問題所述

簡而言之,將一個package.json放入venv導致無法使用venv npx ...除非它從venv文件夾運行,而將package.json放入venv/lib並從那里運行npm install導致能夠使用npx ...來自項目中的任何文件夾。

這是由於NODE_PATH環境變量設置為<myproject>/venv/lib/node_modules

我創建了一個自動執行此操作的腳本,實際上:

python -m venv venv
source venv/bin/activate
pip install requirements.txt
cp package.json venv/lib
cd venv/lib
nodeenv -p
npm install --no-optional

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM