向 Angular 项目添加 .npmrc 文件。

3

我好像在这个过程中缺少了一整个步骤。我在我的Angular项目的根目录下添加了一个 .npmrc 文件,并在其中添加了以下行:

@example/xxx:registry=ssh/url/of/my/private/repo/in/bitbucket

因此,我在package.json中添加了@example/xxx以从我的私有存储库安装依赖项。

然而,该文件似乎没有任何效果,甚至在运行npm install时也不被识别,返回一个错误,指出在npm注册表上找不到我的包(这是预期的)。除了在项目根目录中简单地创建.npmrc文件之外,我是否还需要做些什么?

我的目标是能够使用正确的配置推送项目,以便每个有权访问该程序包和项目存储库的人都可以简单地拉取该项目并能够安装和使用私有包。

1个回答

1
在angular项目的package.json中添加以下行可解决问题:
"package-name": "url/of/package/repo"

但是,我想更改包的范围,并且能够使用 @SCOPE/xxx:registry=...... 进行访问。

*这是一个私有包,未发布。

编辑: 我只是打错了字。.npmrc 文件中的以下行起作用:

@SCOPE:registry=https://....

"

不需要 xxx 部分。感谢 GitLab 包注册表文档。

"

您的私有包中是否也定义了作用域?在该 package.json 文件中,name 属性应该如下所示: "name": "@SCOPE/package-name" - west efan
1
@westefan,我没有。更准确地说,我不知道如何/在哪里。 - ilpianoforte
在您要安装的私有包中,也有一个 package.json 文件。在其中,name 属性也应该按照上述方式定义作用域。 - west efan
1
是的,我已经做了,但仍然没有改变。在我看来,问题在于 Angular 项目中的 .npmrc 文件根本没有被识别,因为 npm 在 https://registry.npmjs.org/ 上查找包。除了创建一个简单的文件名 .npmrc,我需要做些特定的事情吗? - ilpianoforte

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接