Node.js的NPM安裝

CSDN部落格發表於2014-09-03

本來不打算介紹node.js的npm的安裝,但是發現node.js一些包的管理是通過npm來實現,還是要簡單介紹一下npm。
1、npm是什麼
npm是一個node包管理和分發工具,已經成為了非官方的釋出node模組(包)的標準。有了npm,可以很快的找到特定服務要使用的包,進行下載、安裝以及管理已經安裝的包。
2、npm的安裝(windows)

[1]我們要先配置npm的全域性模組的存放路徑以及cache的路徑,例如我希望將以上兩個資料夾放在NodeJS的主目錄下,便在NodeJs下建立”node_global”及”node_cache”兩個資料夾。如下圖

[2]啟動cmd,輸入

npm config set prefix “C:\Program Files\nodejs\node_global”

以及

npm config set cache “C:\Program Files\nodejs\node_cache”

[3]現在我們來裝個模組試試,選擇express這個比較常用的模組。同樣在cmd命令列裡面,輸入“npm install express -g”(“-g”這個引數意思是裝到global目錄下,也就是上面說設定的“C:\Program Files\nodejs\node_global”裡面。)。待cmd裡面的安裝過程滾動完成後,會提示“express”裝在了哪、版本還有它的目錄結構是怎樣。如下圖

[4]如果存在“xxx不是內部或外部命令,也不是可執行的程式或批處理檔案”這個錯誤,需要設定環境變數在系統變數下新建”NODE_PATH”,輸入“C:\Program Files\nodejs\node_global\node_modules”。

3、package.json

npm命令執行時會讀取當前目錄的 package.json 檔案和解釋這個檔案,這個檔案基於 Packages/1.1 規範。在這個檔案裡你可以定義你的應用名稱( name )、應用描述( description )、關鍵字( keywords )、版本號( version )、應用的配置項( config )、主頁( homepage )、作者( author )、資源倉庫地址( repository )、bug的提交地址( bugs ),授權方式( licenses )、目錄( directories )、應用入口檔案( main )、命令列檔案( bin )、應用依賴模組( dependencies )、開發環境依賴模組( devDependencies )、執行引擎( engines )和指令碼( scripts )等。
對於開發者而言,開發和釋出模組都依賴於他對這個檔案 package.json 所包含的意義的正確理解。我們下面用一個本文共用的例子來說明:

{
“name”: “test”,
“version”: “0.1.0″,
“description”: “A testing package”,
“author”: “A messed author <messed@example.com>”,
“dependencies”: {
“express”: “1.x.x”,
“ejs”: “0.4.2″,
“redis”: “>= 0.6.7″
},
“devDependencies”: {
“vows”: “0.5.x”
},
“main”: “index”,
“bin”: {
“test”: “./bin/test.js”
},
“scripts”: {
“start”: “node server.js”,
“test”: “vows test/*.js”,
“preinstall”: “./configure”,
“install”: “make && make install”
},
“engines”: {
“node”: “0.4.x”
}
}

4、npm常用命令

npm install <name>安裝nodejs的依賴包
例如npm install express 就會預設安裝express的最新版本,也可以通過在後面加版本號的方式安裝指定版本,如npm install express@3.0.6

npm install <name> -g  將包安裝到全域性環境中
但是程式碼中,直接通過require()的方式是沒有辦法呼叫全域性安裝的包的。全域性的安裝是供命令列使用的,就好像全域性安裝了vmarket後,就可以在命令列中直接執行vm命令

npm install <name> –save  安裝的同時,將資訊寫入package.json中
專案路徑中如果有package.json檔案時,直接使用npm install方法就可以根據dependencies配置安裝所有的依賴包
這樣程式碼提交到github時,就不用提交node_modules這個資料夾了。

npm init  會引導你建立一個package.json檔案,包括名稱、版本、作者這些資訊等

npm remove <name>移除

npm update <name>更新

npm ls 列出當前安裝的了所有包

npm root 檢視當前包的安裝路徑

npm root -g  檢視全域性的包的安裝路徑

npm help  幫助,如果要單獨檢視install命令的幫助,可以使用的npm help install

相關文章