【问题标题】:Artifactory scoped npm packages have extra "scope" in pathArtifactory 范围的 npm 包在路径中有额外的“范围”
【发布时间】:2016-11-30 19:24:08
【问题描述】:

我在 Artifactory 的 npm-local 存储库中发布了一个作用域 npm 包。例如,假设它是 package.json 中的 @scope/packagename。它在 Artifactory 上创建的路径似乎在路径中有一个额外的@scope:https://artifacts.company.com/artifactory/webapp/#/artifacts/browse/tree/General/npm-local/@scope/packagename/-/@scope/packagename-version.tgz

这是正确的吗?发布有问题吗?这与另一个问题有关:Installing scoped npm packages from Artifactory。当我尝试安装刚刚发布的这个软件包时,我收到一个 404 错误,让我相信路径可能有问题?

编辑: 为了发布我的作用域包,我编辑了我的 .npmrc:

@scope:registry=https://artifacts.company.com/artifactory/api/npm/npm-local/
//artifacts.company.com/artifactory/api/npm/npm-local/:_password=Q......
//artifacts.company.com/artifactory/api/npm/npm-local/:username=dgriner
//artifacts.company.com/artifactory/api/npm/npm-local/:email=d.griner@company.com
//artifacts.company.com/artifactory/api/npm/npm-local/:always-auth=true

在我的 package.json 文件中,我有以下内容:

"name": "@scope/packagename",

然后我运行npm publish,它创建了上述路径。

【问题讨论】:

  • 您能否提供有关您如何发布范围包的信息?
  • @drorb 我用发布信息编辑了我的问题。另请参阅我的另一个问题stackoverflow.com/questions/40870241/…,这就是我问这个问题的原因。感谢您的帮助。

标签: node.js npm artifactory


【解决方案1】:

路径似乎没问题,应该不会导致解析错误。
NPM 包的物理位置不会影响它的解析方式。在解析 NPM 包时,Artifactory 使用的是包元数据而不是其路径(与其他受支持的包管理器相反,例如 Maven,它依赖于存储库布局和工件路径)。
如您所见,Artifactory 确实有一个用于存储 NPM 包的布局。虽然它不用于解决问题,但它可以用于其他问题,例如配置细粒度的访问权限。

【讨论】:

    猜你喜欢
    • 2019-03-25
    • 1970-01-01
    • 1970-01-01
    • 2019-10-01
    • 2018-09-19
    • 2016-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多