1. ホーム
  2. javascript

[解決済み] yarnでライセンスフィールドの警告を出さないようにするには?

2022-01-31 20:37:28

質問内容

動作について 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の定義 は有効であるべきです。

最後に、プライベートな または未発表のパッケージは、いかなる条件下でも

{ "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.

私の最大の目標はこの警告を消すことですが、たとえそれが外部から決して見られない内部プロジェクトであっても、警告を消すために無効なオープンソースのLICENSEを提供することはしたくありません。

警告を表示させずにyarnプロジェクトをプロプライエタリとしてマークするには?

解決方法は?

対象 yarnnpm の場合、デフォルトの動作は親ディレクトリを検索することです。

時代遅れで忘れていた 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.