内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

网站服务器_邮件代理服务器_最新活动

2021-07-13 04:31 出处:欧普曼云计算 人气: 评论(0

网站服务器_邮件代理服务器_最新活动

这篇文章告诉您关于最近的SAP迁移您需要知道什么,以及需要做什么节点.js包到默认注册表npmjs.org网站.

TL;DR

自2017年以来,SAP节点.jsSAP特定注册表中提供的软件包https://npm.sap.com。在过去的几周里,团队一直忙于将这些包迁移到默认的公共注册中心https://npmjs.org。

此外,大数据质量,SAP软件包的更新将来只能从默认的公共注册中心获得,特定于SAP的注册表将被淘汰。

因此,现在是删除任何NPM配置的时候了,您可能已经设置为指向SAP包的特定于SAP的注册表。

这样做:

(如果您在Windows上,您可能需要将@sap:注册表部分用双引号)

你就完了!

背景

默认的包管理器节点.js是节点包管理器(NPM)。节点.js包(也称为NPM包)可以在注册表中公开提供。主默认注册表位于https://npmjs.org。

出于组织的目的,一个包可以属于一个范围(把它看作类似于一个名称空间)。作用域以@符号开始,并用斜杠连接到包名称。例如,包

在@sap scope中。

将这个scope思想与可以有多个注册表的事实结合起来(这就是为什么)https://npmjs.org是这意味着,例如,将属于某个范围的包发布到不同的注册中心并在不同的注册中心可用。

SAP NPM注册中心(现已退役)

这是SAP三年前推出SAP NPM注册中心时所做工作的基础–请参阅2017年Sven Kohlhaas的帖子。

在您的系统上,NPM将主要作为命令NPM存在,当您请它为您安装一个软件包,它将从与指定作用域相关联的注册表下载该软件包。

下面是一个示例(请注意,这是它到目前为止的工作方式,以便于说明):

如果@sap scope和提供该软件包的sap NPM注册表之间没有特定关联,npmwould假设并使用https://npmjs.org。

所以我们为npm设置了配置,告诉它为@sap范围的包使用特定的注册表,什么大数据,比如:

现在,随着最近sap包迁移到主的默认npm注册表https://npmjs.org,而包的@sap作用域保持不变,配置设置将@sap scope关联到特定于sap的注册表(https://npm.sap.com)不再需要

不仅如此,云零售,也不再推荐,由于SAP软件包的更新只能在默认的NPM注册表上使用,SAP特定注册表最终将消失。

了解并进行更改

您可以使用NPM配置检查您的NPM配置。下面是我的机器现在的一个例子:

以分号为前缀的行是注释,中间的配置块是我的用户特定配置(即我所做的设置),它存储在我的主目录的.npmrc文件中。

您可以看到两个作用域/注册表设置。第一个是我自己的@qmacro作用域包,它在GitHub上(请参阅GitHub包特性以获取更多信息)。

第二个是SAP包的当前(现在是不需要的)作用域/注册表关联,返利商城,这是我在过去某个阶段运行npm config set命令的结果。需要删除的是这个关联(这样npm将对任何@sap范围的包使用默认的npm注册表)。

现在让我们一起做:

这将完全满足我们的要求,i、 e.删除将@sap scope与旧的(失效的)sap特定注册表关联的配置条目。

检查更改是否生效

现在,所有引用@sap scope包的npm操作都将使用默认值https://npmjs.org注册。

如何检查?当然,您可以首先重新运行npmconfiglistcommand并检查@sap:注册表配置行已经走了。

您还可以通过询问@sap scoped包的信息,以更有趣的方式检查这一点,检查信息是否隐式地来自默认的NPM注册表。

下面是一个您可以尝试的示例:NPM info@sap/cds dk

这是我的机器上的输出现在的样子:

执行此操作时的详细信息可能会随着版本、维护者和依赖项的变化而变化,但您要查找的是什么是tarball URL中的完全限定域名(FQDN):

这确认了它是这里使用的默认注册表。

对于好奇的人来说

这是关于这个帖子的,但是对于好奇的人来说这里有更多的信息。

如果你想知道的话,npm命令集的结构是非常灵活的,设计得适合你的需要想一想。

例如,在前面的npm config setcommand中,config单词可能被省略了(即npm setworks也可以)。

一些目光敏锐的读者会在我的配置输出中注意到这个注释:

换句话说,物联网的应用有哪些,可以使用npm config ls而不是npm config list。同样,我可以使用npm config rm而不是npm config delete.

那么这个配置设置(它与包作用域或注册表无关)呢?

它只是告诉npm,当它向我显示有关包及其依赖项的信息时,不要在输出中显示任何级别的包层次结构,因为我通常只想看到顶级的包信息。

例如,我可以很容易地看到我在全球安装了哪些包,像这样:

如果在我的配置中没有这个深度设置,输出将是一个复杂的层次结构,很详细,但不是我通常想要的:

分享给小伙伴们:
本文标签: 网站服务器邮件代理最新活动

相关文章

评论

发表评论愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。

签名: 验证码: 点击我更换图片

评论列表