node.js的npm安装
我不打算引进node.js的npm安装,但发现node.js通过管理一些包npm实现,或给一个简短的npm。
1、npm什么
npm是一个node包管理和分发工具,已经成为了非官方的公布node模块(包)的标准。
有了npm,能够非常快的找到特定服务要使用的包。进行下载、安装以及管理已经安装的包。
2、npm的安装(windows)
[1]我们要先配置npm的全局模块的存放路径以及cache的路径,比如我希望将以上两个目录放在NodeJS的主目录下,便在NodeJs下建立"node_global"及"node_cache"两个目录。
例如以下图
[2]启动cmd。输入
npm config set prefix "C:\Program Files\nodejs\node_global"
以及
npm config set cache "C:\Program Files\nodejs\node_cache"
[3]如今我们来装个模块试试,选择express这个比較经常使用的模块。相同在cmd命令行里面。输入“npm install express -g”(“-g”这个參数意思是装到global文件夹下,也就是上面说设置的“C:\Program Files\nodejs\node_global”里面。
)。
待cmd里面的安装过程滚动完毕后。会提示“express”装在了哪、版本号还有它的文件夹结构是如何。例如以下图
[4]假设存在“xxx不是内部或外部命令,也不是可执行的程序或批处理文件”这个错误。须要环境变量设置在系统变量下新建"NODE_PATH",输入“C:\Program Files\nodejs\node_global\node_modules”。
3、package.json
npm命令执行时会读取当前文件夹的 package.json 文件和解释这个文件,这个文件基于 Packages/1.1 规范。在这个文件中你能够定义你的应用名称( name )、应用描写叙述( description )、关键字( keywords )、版本( version )、应用的配置项( config )、主页( homepage )、作者( author )、资源仓库地址( repository )、bug的提交地址( bugs ),授权方式( licenses )、文件夹( directories
)、应用入口文件( main )、命令行文件( bin )、应用依赖模块( dependencies )、开发环境依赖模块( devDependencies )、执行引擎( engines )和脚本( scripts )等。
对于开发人员而言,开发和公布模块都依赖于他对这个文件 package.json 所包括的意义的正确理解。我们以下用一个本文共用的样例来说明:
{
"name": "test",
"version": "0.1.0",
"description": "A testing package",
"author": "A messed author <messed@example.com>",
"dependencies": {
"express": "1.x.x",
"ejs": "0.4.2",
"redis": ">= 0.6.7"
},
"devDependencies": {
"vows": "0.5.x"
},
"main": "index",
"bin": {
"test": "./bin/test.js"
},
"scripts": {
"start": "node server.js",
"test": "vows test/*.js",
"preinstall": "./configure",
"install": "make && make install"
},
"engines": {
"node": "0.4.x"
}
}
4、npm经常使用命令
npm install <name>安装nodejs的依赖包
比如npm install express 就会默认安装express的最新版本号,也能够通过在后面加版本号号的方式安装指定版本号。如npm install express@3.0.6
npm install <name> -g 将包安装到全局环境中
可是代码中。直接通过require()的方式是没有办法调用全局安装的包的。全局的安装是供命令行使用的,就好像全局安装了vmarket后。就能够在命令行中直接执行vm命令
npm install <name> --save 安装的同一时候。将信息写入package.json中
项目路径中假设有package.json文件时。直接使用npm install方法就能够依据dependencies配置安装全部的依赖包
这样代码提交到github时,就不用提交node_modules这个目录了。
npm init 会引导你创建一个package.json文件,包含名称、版本号、作者这些信息等
npm remove <name>移除
npm update <name>更新
npm ls 列出当前安装的了全部包
npm root 查看当前包的安装路径
npm root -g 查看全局的包的安装路径
npm help 帮助,假设要单独查看install帮助命令,它可用于npm help install
版权声明:本文博客原创文章,博客,未经同意,不得转载。
node.js的npm安装的更多相关文章
- node.js及npm安装&配置
之前我们在文言文安装教程里写过node.js及npm的安装,这里我们详细写一下. 下载node.js node.js下载分为两种,官网nodejs.org,和国内官网nodejs.cn,国内的童鞋建议 ...
- Node.js与npm安装(转载)
2009年的JSCOnf大会上,一个叫Ryan Dahl的年轻程序员向人们展示了一个他正在做的项目,一个基于Google V8引擎的JavaScript运行平台,它提供了一套事件循环和低IO的应用程序 ...
- Node.js使用npm安装模块太慢,解决办法
转自 淘宝 npm 地址: http://npm.taobao.org/ 如何使用 有很多方法来配置npm的registry地址,下面根据不同情境列出几种比较常用的方法.以淘宝npm镜像举例: 1.临 ...
- 如何在CentOS 7上安装Node.js和npm
Node.js是一个跨平台的JavaScript运行时环境,允许在服务器端执行JavaScript代码.Node.js主要用于后端,但也作为全栈和前端解决方案而流行. npm,Node软件包管理器的缩 ...
- Windwos安装Node.js和npm的详细步骤
How to Install Node.js and NPM on Windows Node.js和npm 安装 Node.js 的时候会自动安装 npm ,并且 npm 就是 Node.js 的包管 ...
- 在Linux Mint上安装node.js和npm
1.安装Node.js 前端开发过程中,很多项目使用npm的http-server的模块来运行一个静态的服务器,我个人在Dell的笔记本上安装的是Linux Mint最新版本,所以想尝试一下在Linu ...
- 关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用
关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用 工作环境:window下 在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/) ...
- Node.js、npm、vue-cli 的安装配置环境变量
我安装node.js是为了学习vue,需要用到npm,所以就把node.js安装了,安装node.js会带有npm的安装. 在安装node.js之前,我们需要了解以下三个内容. npm: Nodejs ...
- Linux(CentOS)安装Node.JS和npm的两种方式(yum安装和源码安装)
yum安装 yum安装是将yum源中的rpm包下载到本地,安装这个rpm包.这个rpm包是别人编译安装好的二进制包.这种方式方便快捷,特别是不用考虑包依赖. 0.了解linux版本 通过 uname ...
随机推荐
- oracle物化视图使用+hibernate
使用过程 ----删除 TRUNCATE TABLE mlog$_xxx_lxz_tmp;DROP MATERIALIZED VIEW LOG ON xxx_lxz_tmp; drop materia ...
- iOS 中client和server的 Web Service 网络通信 (2)
在实际的应用开发过程中,同步请求的用户体验并非非常好:我们都知道.Apple是非常重视用户体验的.这一点也成为了行业的标杆,没实用户哪里来的好产品.所以用户体验是极其重要的.貌似废话有点多.接下来进入 ...
- Unity3d该物业(Attributes)整理
http://blog.sina.com.cn/s/blog_5b6cb9500101857b.html Attributes属性属于U3D的RunTimeClass,所以加上下面的命名空间是必须的了 ...
- java提高篇(四)-----抽象类与接口
接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法. 抽象类与接口是java语言中对抽象概念进行定义的两种机制,正是由于他们的存在才赋予java强大的面向对象的能力.他们两者之间对抽象概念 ...
- RH033读书笔记(15)-Lab 16 The Linux Filesystem
Lab 16 The Linux Filesystem Goal: Develop a better understanding of Linux filesystem essentials incl ...
- 探索Windows Azure 监控和自动伸缩系列3 - 启用Azure监控扩展收集自定义监控数据
上一篇我们介绍了获取Azure的监控指标和监控数据: http://www.cnblogs.com/teld/p/5113376.html 本篇我们继续:监控虚拟机的自定义性能计数器. 随着我们应用规 ...
- javascript事件和事件处理
于js期间事件处理被分成三个步骤: 1.发生事件 2.启动事件处理程序 3.事件处理程序做出反应 事件处理程序的调用 1.在javascript中 在javascript中调用事件处理程序,首先要获得 ...
- iOS如何添加照片模拟器(附带诉讼)
刚開始做图片选择时,使用了最笨的办法给iphone模拟器添加照片. 方法一:首先打开safari.然后找到图片.点击图片,保存到本地(iphone): 方法二:拖动本地计算机的随意一张照片到iphon ...
- 【Flume】flume于transactionCapacity和batchSize进行详细的分析和质疑的概念
我不知道你用flume读者熟悉无论这两个概念 一开始我是有点困惑,? 没感觉到transactionCapacity的作用啊? batchSize又是干啥的啊? -- -- 带着这些问题,我们深入源代 ...
- Wpf ScrollViewer with WrapPanel 使用鼠标滚轮水平滚动内容
为WrapPanel添加水平滚动条,当禁用垂直滚动条后使用鼠标无法滚动,竟然还需要自己写代码来实现,真真是挺无语呢,不知道算不算是一个bug. <Grid Background="Tr ...