npm發佈包的那些事

npm發包的那些事

最近一直在研習關於node的知識,發佈包雖然是最基礎的一點,但因爲一些地方的不注意很容易發生錯誤,我整理了我可能出現過的一些發佈包的過程當中的一些error,如今分享給你們:

正確的發包步驟:node

  • 執行npm init,生成package.json。package.json字段多且雜,咱們最好讓關鍵的部分交由系統幫咱們生成,這樣的話,採用npm init是最正確的辦法。它以問答的形式獲取一些重要的信息,而後生成package.json。

不夠清楚?上圖
圖片描述npm

  • 執行npm adduser,接下來會以問答的形式向你瞭解你的用戶名、密碼以及公開的郵箱。若是沒有執行這些操做,直接上npm publish的話,會報一個錯誤這時關鍵部分來了!
npm ERR! need auth auth and email requiredfor publishing

npm ERR! need auth You need to authorize this machine using npm adduserjson

錯誤。ui

npm ERR! publish Failed PUT 403
npm ERR! Error: no_perms Private modeenable, only admin can publish this module: nodebb-plugin-route-cms
有至少兩種方法:命令:npm adduser
1)修改~/.npmrc中的registry字段(命令:vi ~/.npmrc)
2)直接在命令行修改便可。this

不夠清楚?繼續上圖!
圖片描述spa

  • 在執行npm publish的時候,由於要訪問~/.npm這個目錄,不知怎麼回事(權限應該正確的啊),須要以root帳戶權限執行才行。所以這裏要加上sudo。若是不加上sudo的話,會出現這樣的錯誤:

npm ERR! addLocal Could not install .
npm ERR! Error: EACCES, open'/home/jiangcaiyang/.npm/nodebb-plugin-route-cms/0.0.1/package/package.json'
npm ERR! { [Error: EACCES, open'/home/jiangcaiyang/.npm/nodebb-plugin-route-cms/0.0.1/package/package.json']
npm ERR!  errno: 3,
npm ERR!  code: 'EACCES',
npm ERR!  path:'/home/jiangcaiyang/.npm/nodebb-plugin-route-cms/0.0.1/package/package.json' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
--tag的意思是標記版本號。這裏按照semver的標準來制定版本(參考這裏)
版本格式:主版號.次版號.修訂號,版號遞增規則以下:命令行

主版號:當你作了不相容的API 修改,code

次版號:當你作了向下相容的功能性新增,blog

修訂號:當你作了向下相容的問題修正。圖片

先行版號及版本編譯資訊能夠加到「主版號.次版號.修訂號」的後面,做爲延伸。

最後繼續以一張圖片來結尾,結束咱們的此次分享

在大型項目的建設過程當中,不少細小的錯誤都會讓咱們花費巨大的時間成本去完成,因此若是可以提早知道防患於未然就顯得尤其重要了。
相關文章
相關標籤/搜索