1. 程式人生 > >nodejs 之npm包管理工具詳解

nodejs 之npm包管理工具詳解

npm--node package manager  Node 檔案包管理工具

首先我還是喜歡man先生的解釋.

npm <command> [args]

描述:

    npm 是Nodejs平臺的一個包管理工具.它將模組放在一個nodejs可以找到的地方.並且能夠機智的管理依賴中間的衝突.

    它極其的具備可配置性,支援廣泛的應用情況. 通常,它被用來 釋出,發現,安裝和開發node程式.

    使用node help 獲取更多的命令.

    例如,你可以通過 node install blerg 來安裝最新版本的"blerg",檢視npm install 獲取更多資訊.

    使用npm search 來搜尋可以使用的包. 使用npm ls 列出你已經安裝的包.當然是 需要在特定的目錄中.

    可以使用npm help folders來檢視包的結構.和檢視其將包放在的位置.

   尤其需要指出的是npm有兩種安裝操作.

        ①全域性模式:npm將包放在prefix/lib/node_modules將可執行檔案放在prefix/bin目錄中.比如我的bower如果全域性安裝的話,包是放在/usr/local/lib/node_modules目錄,可執行檔案放在 /usr/local/lib/node_modules目錄中.

       ②本地模式:npm將包安裝在當前的專案目錄中.包被安裝在./node_modules目錄中,bins被安裝在了./node_modules/.bin目錄中.   (為啥隱藏起來呢.後面會講到,其實如果是本地安裝的話,意味著都是用來require的,不需要使用全域性命令.)

      本地模式是預設的.如果想全域性安裝的話,請在命令後面加入 --global 或者-g  .例如 npm install bower -g  |   npm install bower --global

下面的是配置檔案.我暫時不想講.

我來講講其中的各種應用吧.

    1)npm update   這個命令將會把所有當前./node_modules目錄下的包更新到最新的版本.同時也會找回丟失的包.這句話的意思是,如果你不小心將./node_modules中的某個目錄刪除,但是你的package.json檔案中有這個包的依賴,那麼就會下載並且安裝這個包.  如果是 -g 選項被指定,這個命令將會更新全域性安裝的包.

    2)npm adduser  這個命令可以讓你在本機上直接在https://npmjs.org上面建立一個賬號.你可以通過這個賬號名和密碼去https://npmjs.org網站上去登陸.

    3)npm owner 這個命令用來修改擁有者資訊. 可以使用npm owner ls檢視所有的擁有者,或者使用npm owner add 或者使用npm owner rm來增加或者刪除擁有者資訊.

    4)npm install  安裝包,其實npm install有很多的安裝方式.

  npm install

  npm install <tarball file>

  npm install <tarball url>

  npm install folder 

  npm install <name>[--save|--save-dev|save-optional][--save-exact]

  npm install <name>@<tag>

  npm install <name>@<version>

  npm install <name>@<version range>

  npm i 

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

如npm install [email protected]

npm install <name> -g  將包安裝到全域性環境中

但是程式碼中,直接通過require()的方式是沒有辦法呼叫全域性安裝的包的。全域性的安裝是供命令列使用的

npm install <name> --save  安裝的同時,將資訊寫入package.json

專案路徑中如果有package.json檔案時,直接使用npm install方法就可以根據dependencies配置安裝所有的依賴包

    5)npm init  互動式的建立一個package.json檔案.注意:如果已經有了package.json檔案,它首先將會讀取該檔案,它不會覆蓋相同的內容,只是增加缺少的內容.

好啦,只是初步介紹,以後還會有更詳細的內容.

相關推薦

nodejs npm管理工具

npm--node package manager  Node 檔案包管理工具 首先我還是喜歡man先生的解釋. npm <command> [args] 描述:     npm 是Nodejs平臺的一個包管理工具.它將模組放在一個nodejs可以找到的地方.並

Linux進程管理工具

進程管理工具 進程管理工具 查看進程 pstree 顯示進程樹 -p:顯示PID ps 搜索進程 ps | grep pgrep pidof系統監控工具

npm管理工具在一般專案中的應用方法

最近自己在有時間,在通學一些知識點,記錄一下,以便以後使用方面 當我們在做專案的時候,如果需要到包管理工具,那麼我們一定會經歷以下流程: 1、首先在官網下載node.js,然後預設安裝到C盤   檢查是否安裝node成功?win+r 輸入cmd開啟命令列,輸入node -v,如果出現版本號則證明安裝成功   

shell三劍客awk 資料擷取工具

目錄 awk 資料擷取工具 ③變數 ④流程控制 ⑤陣列 ⑥內建函式 ①awk簡介 >>>awk是一種程式語言(解釋性語言,不需要編譯),用於資料擷取和報告的工具 >>>awk自動搜尋輸入的檔案

Golang學習筆記依賴管理工具gvt

一、gvt概念 gvt全稱為Go vendoring tool,可譯為Go供應工具,或者意譯為Go依賴包依賴包工具,whatever~~,簡單來說就是可以方便的獲取、更新、刪除專案所依賴的工具包,這個特性在Go1.5之前並不支援,1.5版本中需要設定GO15VENDOREX

node.js中npm管理工具

現在安裝node.js,預設就會幫我們裝上了npm包管理工具,npm主要用來下載,安裝,管理第三方模組。 安裝指定的包: npm install <package-name> 預設會安裝在當前目錄下的 node_modules 目錄下,如果 node_modules 不存

乾貨:javajdk命令列工具

在上一篇文章中整理了java開發人員必須掌握的linux基本命令。由於java jdk命令列工具比較重要所以單獨整理一個篇幅來講解。相關資料有來源於網路、加上自己的見解整理而成、比較全面。上一篇文章地址:Java開發必須熟悉的Linux命令看這一篇就夠了。 在

node---如何替換npm管理工具偉國內淘寶映象cnpm

國內使用 npm 速度很慢,可以使用淘寶定製的 cnpm (gzip 壓縮支援) 命令列工具代替預設的 npm: $ npm install -g cnpm --registry=https://

Linux 管理工具RPM

linux rpm講到包管理工具,先來了解下應用程序接口 (API)與應用程序二進制接口 (ABI)。 API: 編程接口 Application Program Interface 換句話說也就是你編寫“應用程序”時候調用的函數之類的東西。對於內核來說,它的“應用程序”有兩種:一種是在它之上的,用戶空

NPMnodejs官方管理工具的簡介、安裝、使用方法詳細攻略

NPM之nodejs官方包管理工具的簡介 NPM的全稱是Node Package Manager,是隨同NodeJS一起安裝的包管理和分發工具,它很方便讓JavaScript開發者下載、安裝、上傳以及管理已經安裝的包。 npm是nodejs官方的一種包管理工具,簡單點來說,

pip 管理工具使用

pip 包管理工具使用詳解 文章目錄 pip 包管理工具使用詳解 0. 參考資料 1. 安裝、升級與解除安裝包 2. pip 自身升級與換國內源 3. 檢視相關資訊 4. requirements.txt 檔案匯

RPM軟體管理工具使用

1.RPM概述 1.1 RPM Package Manager 由 Red Hat 公司提出,被眾多 Linux 發行版所採用 建立統一的資料庫檔案 詳細記錄軟體包安裝、解除安裝等變化資訊 自動分析軟體包依賴關係 1.2 RPM軟體包 軟體素材參考:htt

nodeJs package.json npm cnpm 管理工具

CommonJs的包規範允許我們將一組相關的模組組合到一起,形成一套完整的工具。 CommonJs包規範由包結構(用於組織包中的各種檔案)和包描述檔案(描述包的相關資訊,以供外部讀取)兩部分組成 包結構: 包實際上就是一個壓縮檔案,解壓後還原為目錄。符合規範的目錄應該包含以下檔案: –p

CommonJS規範與NodeJS管理工具NPM

上一篇文章已經介紹了CommonJS 這裡就不贅述了 CommonJS包規範 包是什麼呢? 類比於git,是我們對於某種資料夾的叫法 git init 命令在當前資料夾中生成了隱藏檔案.git,我們就把這個檔案叫做倉庫 npm init 命令在當

Python管理工具setuptools及entry point

Python包管理工具setuptools詳解 0.什麼是setuptools setuptools是Python distutils增強版的集合,它可以幫助我們更簡單的建立和分發Python包,尤其是擁有依賴關係的。使用者在使用setuptools建立的包時,並不需

Python虛擬環境和管理工具Pipenv的使用--看完這一篇就夠了

依賴 交互 -- 速度 插入圖片 proc HERE 科技 常用命令 前言 Python虛擬環境是一個虛擬化,從電腦獨立開辟出來的環境。在這個虛擬環境中,我們可以pip安裝各個項目不同的依賴包,從全局中隔離出來,利於管理。 傳統的Python虛擬環境有virtualenv,

fiddler抓工具

item 設備 cat 是什麽 eight 菜單 header 有一個 分析 轉自:http://www.cnblogs.com/yyhh/p/5140852.html Fiddler 抓包工具總結 閱讀目錄 1.

Linux 管理工具Yum

linux yumYum(全稱為 Yellow dog Updater, Modified)是基於RPM包的包管理工具,能夠從指定的服務器自動下載RPM包並且安裝,可以自動處理依賴性關系,並且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝。至於RPM的介紹,請參考 http://blog.51cto.c

Java定時任務工具Timer篇

java 定時任務 定時 任務調度 什麽 出身 需要 bsp 機制 Java定時任務調度工具詳解 什麽是定時任務調度? ◆ 基於給定的時間點,給定的時間間隔或者給定的執行次數自動執行的任務。 在Java中的定時調度工具? ◆ Timer ◆Quartz Time

Linux 學習路 (三):使用者管理命令

使用者管理命令詳解 useradd [options] USERNAME ​ -u UID(>=500,並且與其他使用者無重複) ​ -g GID(基本組,組必須事先存在) ​ -G GID,… (附加組,組必須事先存在) useradd -G mygroup us