【问题标题】:How to add dependency from another Github project?如何添加来自另一个 Github 项目的依赖项?
【发布时间】:2019-01-24 15:11:28
【问题描述】:

在我使用命令创建的新项目中:

npm init

我想从另一个 GitHub 项目添加依赖,所以我使用了命令:

npm install https://github.com/cichy380/prefixData.git --save-dev

但我得到了错误:

npm 错误!代码 ENOPACKAGEJSON

npm 错误! package.json 非注册包缺少 package.json: git+https://github.com/cichy380/prefixData.git.

npm 错误! package.json npm 在当前目录中找不到 package.json 文件。

你能解释一下为什么吗?

【问题讨论】:

标签: node.js github npm package


【解决方案1】:

我相信我可以回答你的问题“你能解释一下为什么吗?”

鉴于问题中的信息有限,没有人可以肯定地告诉您错误的根本原因,但它可能是以下原因之一:

  1. 最简单的问题可能是您的存储库中没有package.json
  2. 在您的问题中,您说您执行了命令:

    npm install https://github.com/cichy380/prefixData.git --save-dev
    

    这不是有效的npm package git url format。如果您使用协议git+https 可能不会出现该错误,就像这样

    npm install git+https://github.com/cichy380/prefixData.git --save-dev
    

    我不确定这是否适用于所有 npm 版本,但正如您将在 npm 包文档链接中看到的那样,它不允许仅使用 https 协议;

  3. 我不能确定的两个原因 2 是您的问题是 ONE,不确定您使用的是哪个版本的 npm 包以及哪些 npm 版本服从文档我提供了一个链接,两个你提供的错误包括git+https 协议,所以这很混乱:

    npm ERR! package.json Non-registry package missing package.json: 
    git+https://github.com/cichy380/prefixData.git.
    

希望这对某人有所帮助!

【讨论】:

  • "http..." 而不是 "git+http..." 是我的情况。谢谢!
【解决方案2】:

我检查了 validatorpackage.json 文件,发现此文件中的错误。我fixed 它现在npm install ... 命令工作正常!谢谢

【讨论】:

  • 这帮助我修复了name
【解决方案3】:

请注意,自 2019 年 5 月 10 日起,您还拥有“GitHub Package Registry (limited public beta for now)”功能

您现在可以在源代码旁边发布公共或私有包。
GitHub Package Registry 与 GitHub 完全集成,支持以下包管理工具:

  • JavaScript (npm),
  • Java (Maven),
  • Ruby (RubyGems),
  • .NET (NuGet) 和
  • Docker 镜像。

more here:

在你的情况下:“Configuring NPM for use with GitHub Package Registry

【讨论】:

    猜你喜欢
    • 2019-10-11
    • 2020-12-20
    • 1970-01-01
    • 2018-08-04
    • 2014-09-14
    • 1970-01-01
    • 2013-03-21
    • 2020-07-24
    • 2019-12-13
    相关资源
    最近更新 更多