npm包与gem包--在线&离线安装
目录
NPM
NPM,即为Node的包管理工具,官网为 https://www.npmjs.com/,我们可以在站内搜索所需要的NPM包,了解相关的使用规则
安装NPM包有两种方式:线上与线下
线上
1. 连接官方源
下载npm管理工具后,默认是连接到官方的源,命令 npm config ls -l 或 npm config get registry 可查看相关的源

使用类似 npm install request 就可以安装某个包,更多命令可使用 npm <cmd> -h 来查看,或者前往 文档中心

2. 镜像源
有时网络情况不佳,或者被墙了,可以使用一些包的镜像,如 淘宝的NPM镜像
临时使用,直接在命令中加上,生命周期为当前命令窗口:
npm --registry https://registry.npm.taobao.org install express
永久使用,本地配置源,再安装
npm config set registry https://registry.npm.taobao.org
线下
有时候,网络不给力,比如内网环境下,需要进行离线安装NPM包
离线安装的方法无非就是先行下载相应的包文件,再从本地包加载安装
1. 直接去线上下载
在NPM网站上搜索到相关的包文件,但站点上似乎不提供直接的下载保存服务,可以前往它的github库,再下载

2. 线上安装后再从安装目录获取相关文件
上述方法虽然可行,但有些包存在非常多的依赖,一个个下载依赖未免太过冗杂
可以在支持线上安装的机子安装好包之后,从安装目录中获取文件,传到内网机安装
典型的例子是Babel解码器的安装,其依赖很多,假如已经在某个项目下安装了Babel,就会有如下目录

我们可以选择相关的依赖文件,传到内网机,放到下方第三点说的缓存文件夹目录下,用参数 --cache-min 从缓存安装
但要注意的是,现在是处于局部环境下(即当前目录下),如果有很多个局部工程环境,那岂不是要传很多次?况且这么多文件夹你也搞不清依赖文件是哪几个
3. 线上安装后再从缓存中获取相关文件
线上安装,安装至全局环境下,NPM会对下载好的包进行缓存,相对上一种方式,比较统一好管理
路径为系统盘的 npm-cache 目录下,将整个目录复制到另一台机子(如内网机)的 C盘Roaming 文件夹下
即可用命令强制从缓存安装,注意要指定某个或多个包名,否则是不会安装的
npm install babel es-checker --cache-min 999999999

更多可参考
http://www.zcfy.cc/article/offline-installation-of-npm-packages-924.html
http://www.ruanyifeng.com/blog/2016/01/npm-install.html
还要注意的一点是,虽然离线安装成功了,但你还不一定能正常使用命令行工具
比如离线安装 es-checker 成功后,命令行输入es-checker会提示不存在这样的命令
解决方式是 再把线上安装好后生成的cmd入口文件,也一并引入,放到当前局部工程环境下,或全局目录npm文件夹下

GEM
gem即RubyGems,是Ruby的一个包管理工具,类似NPM
Ruby和JS本不应放在一起说,但由于CSS预处理 Sass 及其sprites精灵的一键合成 Compass插件 的安装要依赖 Ruby 环境,自然就要提到这个GEM
GEM官网为 https://rubygems.org/,我们可以在站内搜索所需要的GEM包,了解相关的使用规则
同样的,安装GEM也有线上和线下之分
线上
1. 连接官方源
windows安装Ruby之后,环境支持gem命令,可直接使用 gem install sass 直接安装sass工具包
使用命令gem sources -l 可以查看当前的的源是官方的 https://rubygems.org/
同样的可以使用 gem -h 查看帮助
有些时候安装会提示SSL出现问题

英文还可以的童鞋可以看看 这篇文章,尝试去解决,或者改一下源,使用国内的镜像
2. 连接镜像
可以使用淘宝的镜像 再重新安装
gem sources -a https://ruby.taobao.org/
如果还是出现SSL的问题,那就不要用https了,换成http
gem sources -a http://gems.ruby-china.org
同样的可以使用 gem sources -l 查看当前源
线下
有时候还是需要进行离线安装
1. 直接去官网下载
比如要离线安装compass工具,先去官网搜索 https://rubygems.org/gems/compass/versions/1.0.3

下载链接比较隐蔽,在右下角那里,下载到本地之后再去当前目录执行 gem install compass-1.0.3.gem
然而你会发现,安装失败,缺少了相关依赖文件,看上图就知道了
所以直接下载的方式实为不妥,只方便于依赖不多的包文件
2. 从缓存中获取
线上安装gem包成功之后,相关的依赖包都会下载保存至 ruby安装路径的cache目录 下

我们只要将这个cache目录传到另一台机子,进入这个目录,再用 -l 参数 执行从本地安装即可
gem install -l compass-1.0.3.gem
npm包与gem包--在线&离线安装的更多相关文章
- Ubuntu14.04用apt在线/离线安装CDH5.1.2[Apache Hadoop 2.3.0]
目录 [TOC] 1.CDH介绍 1.1.什么是CDH和CM? CDH一个对Apache Hadoop的集成环境的封装,可以使用Cloudera Manager进行自动化安装. Cloudera-Ma ...
- Centos7中在线/离线安装DockerCE最新版
Docker在Centos7在线/离线安装 一.在线安装 1.检查系统是否支持,因为Docker 要求 CentOS 系统的内核版本高于 3.10 uname -r 2.确保 yum 包更新到最新 y ...
- ELK学习笔记之logstash安装logstash-filter-multiline(在线离线安装)
0x00 概述 ELK-logstash在搬运日志的时候会出现多行日志,普通的搬运会造成保存到ES中单条单条,很丑,而且不方便读取,logstash-filter-multiline可以解决该问题 g ...
- 由导入paramkio包失败,而pip list又能查到此包,而引出的:离线安装python第三方库的实用方法:解决公司内网,服务器/电脑不能上网却需要安装python三方库问题(下:Linux环境中)
问题描述: 公司的Linux服务器是内网,今天要实现某个功能,会用到python控制ssh,需要安装一个Paramkio库,和上一篇一样,仅仅依靠Pypi上下载下来的离线.whl安装包是不行的,lin ...
- Ubuntu14.04用apt在线/离线安装CDH5.1.2[Apache Hadoop 2.3.0]-old
用markdown重写,请稳步这里http://www.cnblogs.com/lion.net/p/5477899.html
- npm用法及离线安装方法
npm用法及离线安装方法 基本的用法 查看某个模块的全部信息,或者可以查看单个信息 npm info name npm info name version npm info name homepage ...
- Linux离线安装redis集群
一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,联网环境安装较为简单,这里只说脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网,服务 ...
- 离线安装redis集群
Step0:redis集群组件需求 Step1:离线安装ruby Step2:离线安装rubygems Step3:安装rubygems的 redis api Step4:离线安装tcl 8.6 St ...
- 腾讯云服务器 离线安装最新稳定版MariaDB 10.2.6
数据库方面我们一般都是使用mysql,由于前段时间我们切换到了MariaDB后,当然生产环境也要更着变,谁叫oracle是个碧池呢! mariaDB主要有三种安装方式 源码安装,有点繁琐,不推荐 yu ...
随机推荐
- WebView解析
WebView解析 WebView是一个基于Webkit的,相当于内置浏览器的强大功能的组件,WebView的使用这么分四步说明:添加组件,加载资源,属性设置,辅助功能. 一.WebView的添加 ...
- SQL Server出现错误: 4014
SQL Server出现错误: 4014 线下的测试机器老是报错,从errorlog里看到大量的4014错误 A fatal error occurred , output error: ). 错误: ...
- SQL Server全时区转换
SQL Server全时区转换 假如你的应用程序是跨国(例如跨国银行交易)使用的话,那么数据库的一些国际化特性支持可以说是非常重要 其中最常见的就是各国时区上的差异,由于SQL Server getd ...
- C#温故知新:《C#图解教程》读书笔记系列
一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...
- Javascript闭包和C#匿名函数对比分析
C#中引入匿名函数,多少都是受到Javascript的闭包语法和面向函数编程语言的影响.人们发现,在表达式中直接编写函数代码是一种普遍存在的需求,这种语法将比那种必须在某个特定地方定义函数的方式灵活和 ...
- S1293和S2220KTV项目结束
1.界面原型(前台的界面搭建一下) 2.数据库 3.架构设计 4.约定的文件抽取 2015年7月20日下午 歌星点歌三界面的联动,数据动态加载 01.点击第一个LIstView,弹出第二个ListVi ...
- 老司机学新平台 - Xamarin Forms开发框架之MvvmCross插件精选
在前两篇老司机学Xamarin系列中,简单介绍了Xamarin开发环境的搭建以及Prism和MvvmCross这两个开发框架.不同的框架,往往不仅仅使用不同的架构风格,同时社区活跃度不同,各种功能模块 ...
- jQuery AJAX 网页无刷新上传示例
新年礼,提供简单.易套用的 jQuery AJAX 上传示例及代码下载.后台对文件的上传及检查,以 C#/.NET Handler 处理 (可视需要改写成 Java 或 PHP). 有时做一个网站项目 ...
- C语言 · 回文数
问题描述 1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求所有这样的四位十进制数. 输出格式 按从小到大的顺序输出满足条件的四位十进制数. 方案一: int main(){ int ...
- Asp.net MVC5 路由Html后缀的问题
环境:VS2013+MVC5+IIS EXPRESS 问题:如果从Asp.net Web迁移到MVC,可能会遇到需要使原来的链接(如http://localhost:12345/old/library ...