Node.js已经诞生两年有余,因为一直处于快速开发中,过去的一些安装配置介绍多数针对0.4.x版本而言的,并不是适合最新的0.6.x的版本状况了,对此,咱们将在0.6.x的版本上介绍Node.js的安装和配置。(本文一概以0.6.1为例,0.6的其他版本,只需替换版本号便可。从http://nodejs.org/#download能够查看到最新的二进制版本和源代码)。 node
在过去,Node.js一直不支持在Windows平台下原生编译,须要借助Cygwin或MinGW来模拟POSIX系统,才能编译安装。幸运的是2011年6月微软开始与Joyent合做移植Node.js到Windows平台上(http://www.infoq.com/cn/news/2011/06/node-exe ),此次合做的成果最终呈如今0.6.x的稳定版的发布上。此次的版本发布使得Node.js在Windows平台上的性能大幅度提升,使用方面也更容易和轻巧,彻底摆脱掉Cygwin或MinGW等实验室式的环境,而且在某些细节方面,表现出比Linux下更高的性能,细节参见http://www.infoq.com/news/2011/11/Nodejs-Windows。 python
在Windows(Windows7)平台下,我将介绍二种安装Node.js的方法,即普通和文艺安装方法。 c++
普通安装方法其实就是最简单的方法了,对于大多Windows用户而言,都是不太喜欢折腾的人,你能够从这里(http://nodejs.org/dist/v0.6.1/node-v0.6.1.msi )直接下载到Node.js编译好的msi文件。而后双击便可在程序的引导下完成安装。 git
在命令行中直接运行: 程序员
node -v
命令行将打印出: github
v0.6.1
该引导步骤会将node.exe文件安装到C:\Program Files (x86)\nodejs\目录下,并将该目录添加进PATH环境变量。 shell
Windows平台下的文艺安装方法主要提供给那些热爱折腾,喜欢编译的同窗们。在编译源码以前须要注意的是你的Windows系统是否包含编译源码的工具。Node.js的源码主要由C++代码和JavaScript代码构成,可是却用gyp工具(http://code.google.com/p/gyp/ )来作源码的项目管理,该工具采用Python语言写成的。在Windows平台上,Node.js采用gyp来生成Visual Studio Solution文件,最终经过VC++的编译器将其编译为二进制文件。因此,你须要知足如下两个条件: npm
下载Node.js的0.6.1版本的源码压缩包(http://nodejs.org/dist/v0.6.1/node-v0.6.1.tar.gz )并解压之。 api
经过命令行进入解压的源码目录,执行vcbuild.bat release命令,而后经历了漫长的等待后,编译完成后,在Release目录下能够找到编译好的node.exe文件。经过命令行执行node -v。 xcode
命令行返回结果为:
v0.6.1
事实上,若是你的编译环境中存在WiX工具集(http://wix.sourceforge.net/ ),执行vcbuild.bat msi release命令,你将会在Relase目录下找到node.msi。
是的,咱们回到了一开始的普通安装方法。所谓文艺就是多走一些路,多看一些风景罢了。
因为Node.js尚处于v0.x.x的版本的快速发展中,Unix/Linux平台的发行版都不会预置Node的二进制文件,经过源码进行编译安装是目前最好的选择。并且用Unix/Linux系统的同窗们多数都是文艺程序员,本节只介绍如何经过源码进行编译和安装。
如同在Windows平台下同样,Node.js依然是采用gyp工具管理生成项目的,不一样的是经过make工具进行最终的编译。因此Unix/Linux平台下你须要如下几个必备条件,才能确保编译完成:
完成以上预备条件后,咱们获取源码并进行环境检查吧:
wget http://nodejs.org/dist/v0.6.1/node-v0.6.1.tar.gz tar zxvf node-v0.6.1.tar.gz cd node-v0.6.1 ./configure 上面几行命令是经过wget命令下载最新版本的代码,并解压之。./configure命令将会检查环境是否符合Nodejs的编译须要。 Checking for program g++ or c++ : /usr/bin/g++ Checking for program cpp : /usr/bin/cpp Checking for program ar : /usr/bin/ar Checking for program ranlib : /usr/bin/ranlib Checking for g++ : ok Checking for program gcc or cc : /usr/bin/gcc Checking for program ar : /usr/bin/ar Checking for program ranlib : /usr/bin/ranlib Checking for gcc : ok Checking for library dl : yes Checking for openssl : yes Checking for library util : yes Checking for library rt : yes Checking for fdatasync(2) with c++ : yes 'configure' finished successfully (7.350s)
若是检查没有经过,请确认上面提到的三个条件是否知足。若是configure命令执行成功,就能够进行编译了:
make make install
Nodejs经过make工具进行编译和安装(若是make install不成功,请使用sudo以确保拥有权限)。完成以上两步后,检查一下是否安装成功:
node -v
检查是否返回:
v0.6.1
至此,Nodejs已经编译并安装完成。如需卸载,能够执行make uninstall进行卸载。
以上介绍了*nix和Windows平台下Nodejs的安装,以后能够如同Nodejs官方网站上介绍的那样,编写example.js文件。
var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(1337, "127.0.0.1"); console.log('Server running at http://127.0.0.1:1337/');
在命令行中执行它:
node example.js
你就能够经过浏览器访问http://127.0.0.1:1337获得Hello World的响应。
NPM的全称是Node Package Manager,若是你熟悉ruby的gem,Python的PyPL、setuptools,PHP的pear,那么你就知道NPM的做用是什么了。没错,它就是Nodejs的包管理器。Nodejs自身提供了基本的模块。可是在这些基本模块上开发实际应用须要较多的工做。所幸的是笔者执笔此文的时候NPM上已经有了5112个Nodejs库或框架,这些库从各个方面能够帮助Nodejs的开发者完成较为复杂的应用。这些库的数量和活跃也从侧面反映出Nodejs社区的发展是十分神速和活跃的。下面我将介绍安装NPM和经过NPM安装Nodejs的第三方库,以及在大陆的网络环境下,如何更好的利用NPM。
就像NPM的官网(http://npmjs.org/)上介绍的那样,安装NPM仅仅是一行命令的事情:
curl http://npmjs.org/install.sh | sh
这里详解一下这句命令的意思,curl http://npmjs.org/install.sh是经过curl命令获取这个安装shell脚本,按后经过管道符| 将获取的脚本交由sh命令来执行。这里若是没有权限会安装不成功,须要加上sudo来确保权限:
curl http://npmjs.org/install.sh | sudo sh
安装成功后执行npm命令,会获得一下的提示:
Usage: npm <command> where <command> is one of: adduser, apihelp, author, bin, bugs, c, cache, completion, config, deprecate, docs, edit, explore, faq, find, get, help, help-search, home, i, info, init, install, la, link, list, ll, ln, ls, outdated, owner, pack, prefix, prune, publish, r, rb, rebuild, remove, restart, rm, root, run-script, s, se, search, set, show, star, start, stop, submodule, tag, test, un, uninstall, unlink, unpublish, unstar, up, update, version, view, whoami
咱们以underscore为例,来展现下经过npm安装第三方包的过程。
npm install underscore
返回:
underscore@1.2.2 ./node_modules/underscore
因为一些特殊的网络环境,直接经过npm install命令安装第三方库的时候,常常会出现卡死的状态。幸运的是国内CNode社区的@fire9 同窗利用空余时间搭建了一个镜像的NPM资源库,服务器架设在日本,能够绕过某些没必要要的网络问题。你能够经过如下这条命令来安装第三方库:
npm --registry "http://npm.hacknodejs.com/" install underscore
若是你想将它设为默认的资源库,运行下面这条命令便可:
npm config set registry "http://npm.hacknodejs.com/"
设置以后每次安装时就能够不用带上—registry参数。值得一提的是还有另外一个镜像可用,该镜像地址是http://registry.npmjs.vitecho.com,如需使用,替换上面两行命令的地址便可。
因为Nodejs最初在Linux开发下的历史缘由,致使NPM一开始也不支持Windows环境,可是随着Nodejs成功移植到到Windows平台,NPM在Windows下的需求亦是日渐增长。下面开始Windows下的NPM之旅吧。
因为github网站不支持直接下载打包了全部submodule的源码包,因此须要经过git工具来签出全部的源码。从http://code.google.com/p/msysgit/downloads/list,能够下载到msysgit这个Windows平台下的git客户端工具(最新版本文件为Git-1.7.7.1-preview20111027.exe)。在下载以后双击安装。
打开命令行工具(CMD),执行如下命令,能够经过msysgit签出NPM的全部源码和依赖代码并安装npm。
git clone --recursive git://github.com/isaacs/npm.git cd npm node cli.js install npm -gf
在执行这段代码以前,请确保node.exe是跟经过node.msi的方式安装的,或者在PATH环境变量中。这段命令也会将npm加入到PATH环境变量中去,以后能够随处执行npm命令。若是安装中遇到权限方面的错误,请确保cmd命令行工具是经过管理员身份运行的。安装成功后,执行如下命令:
npm install underscore
返回:
underscore@1.2.2 ./node_modules/underscore
如此,Windows平台下的NPM安装完毕。若是遭遇网络问题没法安装,请参照Linux下的NPM命令,添加镜像地址。