npm發布包:
解決方案--npm adduser的坑:http://www.tuicool.com/articles/FZbYve
npm ERR publish 403,nodejs發布包流程 :http://www.cnblogs.com/zhoudaozhang/p/4730070.html
npm發布注意事項:http://m.blog.csdn.net/article/details?id=49018629
因為重定向了npm庫的源,所以 npm adduser
時會將用戶名和密碼提交到 http://registry.npm.taobao.org
去驗證,那當然一直報用戶名密碼不正確啦。所以需要使用nrm將npm源切換到npmjs官網。
快速切換npm源的開源工具--nrm:
http://www.cnblogs.com/songqingbo/articles/5611588.html
*為當前項
切換為官方源:
成功:
*編寫模塊
1)新建文件夾,比如:somepackage
2) 該文件夾下新建js文件,比如:index.js
js內容如下:
exports.sayHello=function(){
return "Hello,world.";
};
*初始化包描述文件
使用cmd命令定位到npmfabuPackage文件夾
輸入 npm init 並執行
npm的init命令可以幫助你生成package.json文件,這是我的文件內容:
{
"name": "hanipack1234567",
"version": "1.0.0",
"description": "npmpackage",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "zuojy",
"license": "ISC",
"repository": {
"type": "git",
"url": "git+https://github.com/happyhani/buildnpmpack.git"
},
"bugs": {
"url": "https://github.com/happyhani/buildnpmpack/issues"
},
"homepage": "https://github.com/happyhani/buildnpmpack#readme"
}
*注冊包倉庫賬號
npm adduser
輸入這個命令會有提示輸入用戶名,密碼,郵箱等資料。不能隨意填寫,第一次使用的時候不知道,隨便寫了用戶名密碼郵箱等,會報錯。
應該去https://www.npmjs.com/注冊一個賬號,然后就填寫注冊賬號時填寫的用戶名、密碼和郵箱即可
這和去官方源倉庫https://www.npmjs.com/注冊是一樣的
*上傳包
npm publish
如果上傳成功會提示 +somepackage_xiaotian@1.0.0 否則上傳失敗
這個時候去https://www.npmjs.com/登陸倉庫賬號就可以看到自己的包啦
*安裝包
npm install hani1234567
通過此命令可以在世界上任一一台機器上安裝hani1234567了。
這個名字要和其他的不一樣,其他人發布過的需要修改名字再發布。
發布包過程可能會遇到很多問題,我印象比較深刻的是npm ERR publish 403
You do not have permission to publish 'somepackage'.Are you logged in as
the corrent user?:somepackage
意思是我沒權限發布somepackage,並問我是否使用了正確的賬號,
那也許是somepackage被別人發布過了吧,所以我修改了package.json文件
把name改成somepackage_xiaotian.
*分析包
這個命令可以為你分析出當前路徑下能夠通過模塊路徑找到的所有包,並生成依賴樹。
用 npm ls 查看
添加命令行程序:http://www.cnblogs.com/tzyy/p/5196208.html
也就是在安裝了自己發布的包了以后,設置指令。但是包需要安裝在全局。在局部安裝的還沒有解決一個問題:他貌似會提示找不到路徑。