npm Dependencies硬编码Shrinkwrap url的替代方案
硬编码NPM依赖url并不是最佳实践,而且众所周知,当与代理交互时,shrinkwrap url会出现问题。从事任何一种练习都可以产生以下结果错误:
- Npm install -ddd将显示忽略.npmrc配置的解析
- 通常会去registry.npmjs.org
- 解析结果为400错误
- 一个可能的错误是“我是茶壶”。
- 如果registry.npmjs.org不可用,解析可能会超时
虽然Artifactory不支持npm依赖的shrinkwrap url,而且硬编码的url也不在Artifactory的控制范围内,但有几种方法可以解决这些问题:
- 忽略shrinkwrap,使用参数:
- NPM install
-no-shrinkwrap - 请注意:这会带来依赖项安装的版本与shrinkwrap中定义的版本不同的风险
- NPM install
- 变化的依赖关系
- 改变registry.npmjs.org来< artifactory: port > / artifactory / api / npm / npmjs在package.json
- 请注意这可以是一个单调乏味的进程,尤指具有大量依赖项的进程。
- 旁路加载工件
- 用户解析为虚拟存储库
- 定期复制的内容远程缓存到当地的存储库
- 注意:这种方法可能会导致故障延迟在你得到最新的文物。
更多信息请访问在这里.
