web-dev-qa-db-ja.com

package.jsonの「All Rights Reserved」ライセンス

会社内部の小さなnode.jsプロジェクトがあり、一般公開もサードパーティとの共有も行いません。確かに、公開パッケージリポジトリには貢献しません。

しかし、npm installを実行すると、常に次のエラーが表示されます。

npm WARN package.json <<myproject>>@0.1.0 license should be a valid SPDX license expression

希望するライセンスは次のとおりです。 SPDXライセンスリスト に該当するものは見つかりませんでした。 この回答 の提案も機能しません。 package.jsonからlicenseフィールドを削除すると、エラーはno license fieldに変わります。

npm installを取得して、使用したくないライセンス参照をそこに入れずにエラーや警告を表示しないようにするにはどうすればよいですか?

72
wberry

新しいnpm仕様によると、プライベートまたは非公開のパッケージを使用する権利を他の人に付与したくない場合は、{ "license": "UNLICENSED"}を使用できます。

詳細を参照してください こちら

したがって、あなたが言及したエラーを受け取らないかもしれません。

114
kds

最新の package.jsonのドキュメント によると:

SPDX識別子が割り当てられていないライセンスを使用している場合、またはカスタムライセンスを使用している場合は、次の有効なSPDX式を使用します。

{ "license" : "SEE LICENSE IN <filename>" }

次に、<filename>という名前のファイルをパッケージの最上位に含めます。

34
brandonscript