実行中yarn install
ライセンスを定義しているにもかかわらず、ライセンスが登録されていないという警告が毎回表示されます。
$ jq . package.json
{
"name": "license-example",
"version": "1.0.0",
"main": "index.js",
"license": "UNLICENSED",
"dependencies": {
"lodash": "^4.17.4",
"moment": "^2.18.1"
}
}
これは npm defintion に従って有効である必要があります:
最後に、プライベートまたは非公開のパッケージを何らかの条件で使用する権利を他者に付与したくない場合:
{ "license": "UNLICENSED" }
出力は次のとおりです。
yarn install
yarn install v0.27.5
warning ../package.json: No license field
[1/4] Resolving packages...
success Already up-to-date.
Done in 0.09s.
私の主な目標は、その警告が消えることですが、外部に表示されることのない内部プロジェクトであっても、警告を無効にするための無効なオープンソースライセンスを提供したくありません。
警告を表示せずに糸プロジェクトを専用としてマークする方法は?
Yarnおよびnpmのデフォルトの動作は、親ディレクトリを検索することです。
ライセンスフィールドなしでホームフォルダーにpackage.json
という古くて忘れられていたものがありました。
~/package.json
プロジェクト内でyarn install
を実行する場合:
~/my-project/package.json
それから、yarnは私のホームディレクトリにあるものを見つけ、そのエラーを再移植しました。私のプロジェクトのpackage.json
と間違えました。
この警告は、親フォルダーのパスの前に..
を付けることで、明確になります。
warning ../package.json: No license field
その古いpackage.json
を削除した後、予想される出力が得られます。
yarn install v0.27.5
[1/4] Resolving packages...
success Already up-to-date.
Done in 0.88s.