npm install 時 WARN No repository field No license field
源連結npm 安裝出現npm WARN No repository field or no license field
今天在部署一個200lines區塊鍊項目時
A blockchain implementation in 200 lines of code
在進行npm install時發現沒法直接安裝子產品
npm WARN naivechain@1.. No repository field.
npm WARN naivechain@1.. No license field.
在部署的package.json根下添加上即可(如果你隻是個人開發的話)
{
"private": true
}
翻閱下官方文檔package.json
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICdzFWRoRXdvN1LclHdpZXYyd2LcBzNvwVZ2x2bzNXak9CX90TQNNkRrFlQKBTSvwFbslmZvwFMwQzLcVmepNHdu9mZvwFVywUNMZTY18CX052bm9CX9MGROJTSE1UNBpXTmZEWjZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39jNyMjMwkjMzIzMxEDM4EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
現在license字段好像是被定義成必須的,我們也可以定義自己的license
{ "license" : "BSD-3-Clause" }
{ "license" : "(ISC OR GPL-3.0)" }
{ "license" : "SEE LICENSE IN <filename>" } 目錄下的license檔案
// Not valid metadata
{ "license" :
{ "type" : "ISC"
, "url" : "https://opensource.org/licenses/ISC" 要不直接給個網址吧
}
}
// Not valid metadata
{ "licenses" :
[
{ "type": "MIT"
, "url": "https://www.opensource.org/licenses/mit-license.php"
}
, { "type": "Apache-2.0"
, "url": "https://opensource.org/licenses/apache2.0.php"
}
]
}
{ "license": "ISC" }
{ "license": "(MIT OR Apache-2.0)" } 這兩個認證都可以
{ "license": "UNLICENSED" } 不授權
還有一個問題沒有解決,上面說的有兩個Warn還有一個respository的問題沒解決,同樣翻閱文檔,可以通過添加倉庫位址來解決該問題,兩種方式如下
"repository" : git倉庫位址
{ "type" : "git"
, "url" : "https://github.com/npm/npm.git"
}
"repository" : svn倉庫位址
{ "type" : "svn"
, "url" : "https://v8.googlecode.com/svn/trunk/"
}
"repository": "npm/npm" 倉庫位址也可以簡寫
"repository": "github:user/repo"
"repository": "gist:11081aaa281"
"repository": "bitbucket:user/repo"
"repository": "gitlab:user/repo"
哈哈第一次認真的寫完技術部落格,給自己鼓掌