前言
前端技术层面由于组件定制化封装需求,公司业务安全需求,需要把 npm 的封装好的包发布到公司自己的私有服务器上,由于 maven 也需要用到私服,架构组选择了 nexus 做 npm 和 maven 的私服,方便统一维护和管理,目前开发阶段除了封装好的包,其他前端包先用 npm 官方库中的版本,后期后会把所有 npm 包源换成私有库地址
nexus 建好的 npm 仓库如下
nexus.png
@chint.png
cbf-ui
包是前端基于 ElementUI
库封装了一层,业务层功能开发调用封装好的 cbf-ui
库,这样封装的一个目的是统一组件样式风格,以及业务组件功能,提交开发效率,还有就是后面大版本升级可能有替换UI库组件的需求,这样项目开发上线后业务层代码不用动,直接修改封装层的组件即可,例如把 ElementUI
某个组件换成 Ant Design
中的某个组件
本地 Node 环境版本
node: v16.13.0
npm: 8.1.0
本地项目安装私有库中的 cbf-ui
包
把系统当前用户下的 .npmrc
文件中的内容清空
用记事本打开 .npmrc
文件,把里面的内容备份,然后清空内容保存
本地项目根目录下执行如下操作
http://10.255.101.39:8081
为公司内网地址
npm cache clean --force
清理npm
缓存
先设置npm包的源为私有库
代码语言:javascript复制npm config set registry http://10.255.101.39:8081/repository/npm-group/
- 本地注册 hosted 仓库
npm adduser --registry=http://10.255.101.39:8081/repository/npm-hosted/
输入用户名密码和邮箱,效果如下
npmAddUser.png
- npm配置私有库
npm config set @chint:registry http://10.255.101.39:8081/repository/npm-group/
- 设置npm包的源,如果不设置其他npm包会找不到
npm config set registry https://registry.npmjs.org/
npm install
安装,安装不报错说明下载私有库包正常yarn serve
运行项目正常,说明配置正确
遇到的问题
如果上面的方式安装私有库的npm包出现路径找不到的问题,提示安装路径还是npmjs官方地址(https://registry.npmjs.org
)的情况,可以查看 .npmrc
里面的内容是否正确配置,如果通过命令设置无法正确安装,可以把私有库安装地址配置手动添加到 .npmrc
文件中, 再次 npm install
安装尝试。
本地 .npmrc
文件内容
npmrc2.png