我使用virtualenvwrapper设置了一个python virtualenv。安装后,似乎节点程序仍在从全局安装运行,而不是使用virtualenv版本。
步骤:
创建名为“env”的virtualenv
mkvirtualenv env
激活virtualenv
workon env
安装nodeenv
pip install nodeenv
安装node.js并将nodeenv shell函数添加到virtualenv
nodeenv -p
停用并重新激活virtualenv(尝试使用... env / bin / source activate)
测试node.js路径(在virtualenv中提供正确的路径)
which node
安装内容
npm install -g yo grunt-cli bower
测试路径(显示我的全局路径:/home/USER/.node/bin/grunt)
which grunt
目录“node_modules”get是在我运行npm install命令的目录中创建的,但正如我之前提到的,当我检查每个节点程序的工作路径时,它是全局路径而不是virtualenv like节点内部.js文件。这也引起了问题,例如,Yeoman在安装时抱怨'[错误] npm root值不在你的NODE_PATH中'然后即使它说它成功安装了一个生成器,生成器也没有显示在列表中(这仍然存在于virtualenv中。)
在virtualenv之外,我可以使用node.js程序。
这个帖子看起来很相似,但没有帮助我: nodeenv -- not linking grunt when installed via npm install -g?
任何帮助将不胜感激!