npm私服-Nexus

本文介绍了Nexus中npm仓库的三种类型:代理仓库、私有仓库和组合仓库,以及如何设置npm源来发布私有包。推荐使用nrm工具管理切换源,或者通过修改npm配置、.npmrc文件或package.json中的publishConfig字段来指定发布源。还提到了npm登录、发布、删除包的命令,以及解决发布时遇到的问题,如指定access为public来避免错误。
摘要由CSDN通过智能技术生成
上传包使用的源地址: http://39.104.53.46:8080/repository/npm-host/
下载包使用的源地址: http://39.104.53.46:8080/repository/npm-group/

nexus 中 npm 仓库类型介绍

  • npm(proxy):代理仓库,用于代理获取 npm 其他源上的包(当此仓库没有相应包时,会从配置的第三方仓库拉取,并缓存到本仓库)

  • npm(hosted):私有仓库,用于发布个人开发的包

  • npm(group):组合仓库,对外公开的仓库,集合了 hosted 和 proxy,优先从 hosted 仓库拉取,hosted 仓库没有,再从 proxy 仓库拉取

设置 npm 源的几种方式

开发公司内部私有 npm 包,在发布到 npm 私服前,设置发布的私服地址
// 方式一(推荐)// 通过 nrm 管理切换源
nrm add gfhosted http://39.104.53.46:8080/repository/npm-host/
nrm use gfhosted

// 方式二// 通过 npm 设置全局的源
npm config set registry http://39.104.53.46:8080/repository/npm-host/// 方式三// 在项目根目录下新建 .npmrc 文件,写入以下内容指定源
registry=http://39.104.53.46:8080/repository/npm-host/// 方式四// 在项目的 package.json 文件中,配置 publishConfig 字段,写入以下内容
{
  "publishConfig": {
    "registry": "http://39.104.53.46:8080/repository/npm-host/"
  }
}

其他命令

  • npm login 登录 npm 源(如有问题,关掉网络代理后重试,npm 官方由于网络问题,可能需要多次尝试)

  • npm adduser 填写 npm 登录信息(同 npm login)

  • npm publish 发布包

  • npm unpublish <pkg> --force 删除包

  • npm who am i 检测 npm 是否登录(npm 私服不支持此命令,可用 npm 官方账号登录后体验)

参考文档

常见问题

  • npm publish 时报错 npm ERR! 500 Server Error - PUT http://

Nexus 私服日志提示 Unexpected token VALUE_NULL
原因是 scope 值为空,空指针导致报错
解决办法:在发布时指定 access=publish
通过发布命令指定 npm publish --access=public
在 package.json 中配置 { "publishConfig": { "access": "public" } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值