NodeJs在Linux下使用的各种问题解决

环境:ubuntu16.04

ubuntu中安装NodeJs

通过apt-get命令安装后发现只能使用nodejs,而没有node命令

如果想避免这种情况请看下面连接的这种安装方式:

拓展见:Linux下Nodejs安装(完整详细)

如果想解决问题的话,输入下面的命令即可

sudo ln -s /usr/bin/nodejs /usr/bin/node

npm intsall安装依赖报错

在package.json中添加:

"private": true

拓展见:npm WARN package.json: No repository field

安装npm包的权限问题

安装npm包的时候使用sudo权限

安装gem后报错

Failed to build gem native extension ...

遇到这样的情况通过下面的命令解决

sudo apt-get install ruby1.9.1-dev

或者

sudo apt-get install ruby-dev

拓展见:Failed to build gem native extension — Rails install

添加淘宝源

使用

sudo npm install -g cnpm --registry=https://registry.npm.taobao.org

添加淘宝源后,运行cnpm报错

那是因为乌班图下已经有个node命名的模块

执行下面这段代码解决:

sudo ln -s /usr/bin/nodejs /usr/bin/node

然后你输入node,就没问题了。

拓展见:nodejs vs node on ubuntu 12.04

npm与cnpm的异同

cnpm一般被称为淘宝源的npm命令

npm就是npmjs源的包命令

一般在天朝为了速度,都会换源。下面的命令可以换源

npm config set registry https://registry.npm.taobao.org 

虽然可以cnpm命令用着速度起来了,但是你如果还开发nmp模块的时候,可能会因为换源而遇到坑。

在你使用npm adduser的时候,你输入用户名,密码,邮箱后总是报错。

可能提示你密码或用户名错误,但是你发现你网页登陆npmjs没问题。

那是因为你将npm的源换成了淘宝的,所以你登陆的是淘宝的npm,当然报错了。

你可以查看你的.npmrc文件,看看你的源是什么

registry=https://registry.npmjs.org/
//registry.npmjs.org/:_authToken=.....

所以正确的换源是:将两个命令都保留。

//使用npm安装全局cnpm
sudo npm install -g cnpm --registry=https://registry.npm.taobao.org

这样会产生一个.cnpmrc文件

registry=https://registry.npm.taobao.org
...

这样既不耽误开发npm模块,也不影响你安装依赖的速度。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持菜鸟教程(cainiaojc.com)。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#cainiaojc.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。