首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用npm代替纱线安装包装时出错

用npm代替纱线安装包装时出错
EN

Stack Overflow用户
提问于 2020-02-25 10:36:07
回答 1查看 1.4K关注 0票数 0

我已经创建了git存储库,它将作为npm包在其他项目中使用。让我们说,可共享的存储库名是genesis-service-broker.

我在service(activation服务中使用这个可共享的存储库)。在这个项目中,我使用纱线安装软件包。它在这里运行的很好。

代码语言:javascript
复制
    "dependencies": {
        ...
        "genesis-service-broker": "git+https://${key}:x-oauth-basic@git.my_project.com/${user}/genesis-service-broker.git#create_service_broker_for_genesis",
        ...
    }

当我试图在其他genesis-service-broker服务中使用service(partner包时,它无法安装依赖项。在这个项目中,我使用npm安装依赖项。如果我使用纱线安装依赖项,它的工作非常好。

我在npm安装命令中没有任何错误。当我使用genesis-service-broker npm安装依赖项时,我无法在node_modules,中找到文件夹。

package.json文件在genesis-service-broker存储库中。(供参考)

代码语言:javascript
复制
{
  "name": "service-broker",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "repository": {
    "type": "git",
    "url": "git@git.my_project.com:amol.barewar/service-broker.git"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "config": "^3.2.5",
    "form-data": "^3.0.0",
    "node-fetch": "^2.6.0",
    "request": "^2.88.0",
    "uuid": "^3.4.0"
  }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-25 11:06:39

在这里,yarnnpm的行为是不同的。

yarn addgit项目的名称保留在依赖项中,并在node_modules中创建同名文件夹。

因此,node_modules/genesis-service-broker将导致一个模块被安装为yarn add git+https://${key}:x-oauth-basic@git.my_project.com/${user}/genesis-service-broker.git#create_service_broker_for_genesis

另一方面,npm install从package.json中的name属性获取名称;在您的示例中,它将导致模块被添加为name.此外,依赖关系映射将类似于

代码语言:javascript
复制
"dependencies": {
   ...
   "service-broker": "git+https://${key}:x-oauth-basic@git.my_project.com/${user}/genesis-service-broker.git#create_service_broker_for_genesis",
   ...
}

由于这种差异,requires(...)可能会失败。

在本例中,对于纱线,该模块将通过以下方式提供-

代码语言:javascript
复制
require('genesis-service-broker')

npm通过-

代码语言:javascript
复制
require('service-broker')

因此,总而言之,它将有助于将 name 属性保留在package.json中,与项目名称相同。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60392587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档