使用npm解决依赖关系遇到的问题

原创
2017/01/15 11:47
阅读数 970

##1. 使用cnpm在分发部署时遇到的问题 国内访问 https://www.npmjs.com/ 一直速度缓慢,因此使用了淘宝的npm国内镜像 http://npm.taobao.org/ ,然后按照淘宝镜像的文档使用cnpm来解决包的依赖关系,一直以来使用良好。但是到了基于electron开发的程序需要分发部署的时候,程序运行的时候就出现了问题,提示依赖包没有找到,如图:

输入图片说明

经过查看node_modules文件夹,发现cnpm和npm的依赖包组织形式不一样。

npm:

输入图片说明

cnpm:

输入图片说明

因此马上更换,重新使用npm来解决依赖。

##2. 重新使用npm解决依赖关系

###2.1 npm源设置

由于访问npm官方源速度缓慢,因此有必要更换为内给的淘宝镜像源。

使用以下命令设置npm的源为淘宝的镜像:

npm config set registry https://registry.npm.taobao.org

我们可以使用下面的命令检查是否设置成功:

npm config get registry

输出

输入图片说明

然后使用

npm install --production

就可以成功解决生产环境下的依赖关系,成功部署。

2.2 使用npm安装electron遇到的问题

虽然上面已经解决了production环境的依赖问题,但是我们在development环境下依然需要electron来运行和调试程序。

我们可以使用下面的命令安装依赖

npm install --loglevel=info

--loglevel=info表示info级别的信息也要输出,方便我们了解npm的运行情况。

上述命令就可以把development环境下需要的依赖包安装上,其他依赖包都顺利安装,然而electron包的安装却停顿了,如图:

输入图片说明

这是因为npm设置了淘宝的镜像源,但是electron-download这个模块使用的还是国外的源来下载electron,查阅 https://www.npmjs.com/package/electron-download 后得知可以设置中国的镜像地址:

npm config set ELECTRON_MIRROR="https://npm.taobao.org/mirrors/electron/"

这样就把electron的下载地址设置为淘宝的镜像,下载速度马上提升:

输入图片说明

至此,用npm解决依赖关系的问题解决。

展开阅读全文
打赏
0
1 收藏
分享
加载中
更多评论
打赏
0 评论
1 收藏
0
分享
在线直播报名
返回顶部
顶部