1.npm官網創建npm賬戶
npm網站地址:https://www.npmjs.com/
npm網站注冊地址:https://www.npmjs.com/signup
2.命令行工具登錄npm
npm login
驗證登錄是否成功
npm who am i
3.創建npm庫
npm init
按照提示輸入相應內容:
以下為package.json內容:
{ "name": "zgb_npm", "version": "1.0.0", "description": "it is a example npm", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "zgb", "license": "ISC" }
4.同級目錄下新建index.js並編寫內容
exports.sayHello=function(){ return "Hello,zhoudaozhang."; };
到這里我們一個簡單的npm包就創建完成了,接下來我們來發布npm包
5.發布npm包
npm publish
如果發布成功,則會提示:
6.驗證是否發布成功
換一個目錄,下載我們剛剛發布的npm包
說明剛剛已經發布成功了
7.版本更新
npm version <update_type> -m "<message>"
其中update_type 有三種:
patch
增加一位補丁號(比如 1.1.1 -> 1.1.2)
minor
增加一位小版本號(比如 1.1.1 -> 1.2.0)
major
增加一位大版本號(比如 1.1.1 -> 2.0.0)
比如:
npm version patch -m "Version %s - v1.0.2"
最后提交更新的版本:
npm publish
8.舍棄某個版本的模塊
npm deprecate my-thing@"< 1.0.2" "critical bug fixed in v1.0.2"
9.撤銷自己發布的版本。這只是一個測試的包,最好當然還是撤銷下來
//刪除要用force強制刪除。超過24小時就不能刪除了。自己把握好時間。
npm --force unpublish zgb_npm
10.注意事項:
a.發布的時候用國內鏡像會報錯,我們應使用默認的:
npm config set registry http://registry.npmjs.org
b.npm包package.json中registory屬性一定要填寫,每次publish npm時package.json中version版本一定要大於上一次。
c.npm publish failed put 500 unexpected status code 401這樣的報錯信息,往往是沒有登錄成功,操作npm login
d.npm包的name是唯一的,如果有同名,發布時會報錯
最后推薦一個網址:
http://javascript.ruanyifeng.com/nodejs/npm.html#toc19