Javascript 如何在没有根访问权限的情况下设置npm(节点包管理器)?
将npm设置为root用户是非常困难的。除非您必须以root用户身份运行npm命令(不推荐)。所以我想我应该尝试将它设置为非root用户 根据npm文档,没有root访问权限的非root用户可以通过以下方式设置npm:Javascript 如何在没有根访问权限的情况下设置npm(节点包管理器)?,javascript,node.js,npm,Javascript,Node.js,Npm,将npm设置为root用户是非常困难的。除非您必须以root用户身份运行npm命令(不推荐)。所以我想我应该尝试将它设置为非root用户 根据npm文档,没有root访问权限的非root用户可以通过以下方式设置npm: 创建一个.npmrc文件,其中root、binroot和manroot指向用户拥有的文件夹 然后运行安装脚本 嗯。安装很好 但是node无法看到npm提供的包 那么,我如何让node知道npm提供的包呢?(当我以前以root用户身份安装npm时,我不需要做任何事情)。 我可以在节
.npmrc
文件,其中root
、binroot
和manroot
指向用户拥有的文件夹李>
require.PATH
,或者设置node\u PATH
环境变量,但是设置为什么
谢谢。通过一点探索,您似乎可以:
require.path.push('path\u to\u npm\u root')
~/.node
文件夹
mkdir ~/.node
~/.npmrc
并添加行
prefix = ~/.node
~/.profile
或~/.bash\u profile
并添加这些行
PATH="$HOME/.node/bin:$PATH"
NODE_PATH="$HOME/.node/lib/node_modules:$NODE_PATH"
现在我可以做一些事情,比如
npm-g安装http服务器
,它将在没有root的情况下安装到~/.node
。有了这个选项,当我输入http服务器时,它就会运行。如果您试图从repl调试它,请参阅npm现在不带节点吗?我从来没有运行过npm命令作为根,除非我使用-g。。。