1

我很想知道是否有办法在 NPM 的 package.json 文件中传递自定义许可证 URL。

我试过了:

{
  "license": {"name": "foo", "url": "http://example.com" }
}

似乎现在不推荐使用这种格式

// Not valid metadata
{ "license" :
  { "type" : "ISC"
  , "url" : "http://opensource.org/licenses/ISC"
  }
}

是否有另一种方法可以在 package.json 中传递许可证 url?

4

3 回答 3

3

似乎还有另一种/新的方法可以做到这一点。最近我的 npm 包在我使用时开始抱怨:

{ "license" : "LicenseRef-LICENSE" }

我现在宁愿使用npm docs中记录的符号:

如果您使用的许可证尚未分配 SPDX 标识符,或者如果您使用的是自定义许可证,请使用以下有效的 SPDX 表达式:

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

然后在包的顶层包含一个名为filename的文件。

于 2015-10-28T09:30:16.843 回答
1

在链接的同一页面上如下:

If you are using a license that hasn't been assigned an SPDX identifier, or if you are using a custom license, use the following valid SPDX expression:

{ "license" : "LicenseRef-LICENSE" }

Then include a LICENSE file at the top level of the package.

In the same vein, you chould simply specify your URL in your LICENSE and/or copy/paste your existing license to that location.

于 2015-06-22T17:22:15.590 回答
0
{
  "name": "fcc-learn-npm-package-json",
  "version": "1.0",
  "dependencies": {
    "express": "^4.14.0"
  },
  "main": "server.js",
  "scripts": {
    "start": "node server.js"
  },
  "engines": {
    "node": "8.11.2"
  },
  "repository": {
    "type": "git",
    "url": "https://idontknow/todo.git"
  },
  "author": "Ganesh",
  "description": "This is an example project",
  "keywords": [
    "freecodecamp",
    "example"
  ],
  "license": "MIT",
}
于 2021-10-25T05:49:07.693 回答