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模塊,也不影響你安裝依賴的速度。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM