如何从另一个 Github 项目添加依赖项?

Cic*_*chy 4 github package node.js npm

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

npm init
Run Code Online (Sandbox Code Playgroud)

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

npm install https://github.com/cichy380/prefixData.git --save-dev
Run Code Online (Sandbox Code Playgroud)

但我有错误:

npm 错误!代码 ENOPACKAGEJSON

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

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

你能解释一下为什么吗?

小智 5

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

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

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

    npm install https://github.com/cichy380/prefixData.git --save-dev
    
    Run Code Online (Sandbox Code Playgroud)

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

    npm install git+https://github.com/cichy380/prefixData.git --save-dev
    
    Run Code Online (Sandbox Code Playgroud)

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

  3. 我不能肯定的两个原因2是您的问题是一个,不确定您使用的是哪个版本的 npm 包以及哪些 npm 版本遵守我作为链接提供的文档,以及您提供的两个错误包括git+https协议,因此令人困惑:

    npm ERR! package.json Non-registry package missing package.json: 
    git+https://github.com/cichy380/prefixData.git.
    
    Run Code Online (Sandbox Code Playgroud)

希望这对某人有所帮助!


Cic*_*chy 0

我通过验证器检查了package.json文件,发现该文件中存在错误。我修复了它,现在命令可以正常工作了!谢谢npm install ...