Windows 7下Pomelo环境搭建笔记

简介:

测试环境

 

    硬件:Windows 7(32bit)

    软件:

    Visual Studio 2010/2012

    Python 2.7.5

    Node.js及相关第三方模块(后面安装时说明)

 

        注意:根据后面的参考文章中说,他们安装Pomelo时要求使用VC++ 2010编译器。这个我不要确定了,因为我的机器上既安装了VS2010又安装了VS2012。

 

下载并安装npm工具

 

         pomelo是基于node.js的,而node.js的几乎所有的第三方开源包都是使用NPM这个工具来管理的。所以,首先要下载npm(Node Package Manager)这个工具。下载URL是https://www.npmjs.com/。提示,这个网站上还提供了大量值得研究与使用的node.js开源的第三方增强工具包。我下载后的文件名为npm-master.zip。解压之后,直接从当前位置(我的电脑中路径为D:\Pomelo-Server\npm-master)打开命令行窗口(按下Shift键同时单击右键,从快捷菜单中选择“在此处打开命令窗口”即可)。然后,即可运行npm工具,如下图所示。
wKiom1Tpx53A0ZhuAATFeTC21SM258.jpg

 

安装node.js

        我们知道,pomelo是基于node.js的,所以必须首先安装node.js。我们还知道,node.js是时下流行的开源的服务器端javascript开发框架,它的几乎所有的第三方开源包都是使用NPM这个工具来管理的。你可以到http://nodejs.org/dist/处下载最新版本的node.js。在上面介绍的环境下,我下载的是node-v0.10.33-x86.msi。安装极其简单,就不必说了。安装后在WINDOWS开始菜单中的显示如下图所示:

wKiom1Tpu3_ip-ORAAF_8RhpgWA936.jpg

 

          点击上面图中的“Node.js command prompt“启动命令行窗口。我们可以测试一下它的版本号并进一步验证node.js安装是否正常。如下图:

 

wKiom1TpyJTDkX-cAAEvItMVnPU519.jpg

 

        注意:文后的参考中提示说windows下安装Node.js后已自动安装了npm;同时环境变量也已经配置。第一个结论我没有注意到,而是单独如下所述下载NPM工具使用的。

另外,如果NPM工具不好下载(毕竟在国外网站上,我建议选择早晨国内网络线路比较清闲时间下载)。

 

安装Git

    尽管官网上面没有要求安装这个工具,但是我在进行安装的时候,的确如后文中参考文章中提到的出现过git不是一个可识别的命令这样的错误,但是安装了git之后就可以成功。所以觉得git也应该是必须的。你可以在 这里下载git  并进行安装。安装细节比较简单,在此省略。

 

安装component

        

        component其实也是node.js的一个第三方模块,有点类似 jquery 这样的前端 js 库,这里用它其实是用于给web-server提供脚本build,具体大家可以看这:https://npmjs.org/package/component 或者google,它的安装也很简单,只需在cmd下输入:

 

npm install -g component


别忘了参数-g,表示全局安装,这样你在cmd任何路径下都可以使用component。

值得一提的是,上面的npm工具非常容易,相当好用。就是使用类似于上面的格式,我们可以轻松地下载并安装你感兴趣的来自于世界各地的node.js第三方开源扩展包。

等待安装完毕可以输入:

component -V


注意,这里的V大写,查看版本,目前版本是1.0.2。

 

安装pomelo

pomelo也是基于node的第三方开发的模块,所以安装和component的安装是类似的。在命令行模式下面,通过键入

 npm install -g pomelo 

进行安装。如果出现安装卡主的情况,长时间的等待若不能解决问题,请进行重新的安装。安装完成之后,你可以通过键入pomelo --version

来查看是否安装成功,如果出现了版本号,则说明安装成功了。我的机器上显示的版本号为1.1.4。

 

创建一个简单的示例工程

 

令人奇怪的是,上面安装pomelo后,我随便从某个位置打开命令行窗口,输入pomelo,系统并不承认此命令。可见,系统并没有自动创建相关的环境变量及路径设置等。

不得已,我从路径D:\Pomelo-Server\npm-master下启动命令行窗口,便OK了。要创建一个基于pomelo的服务器端框架,只需要输入如下:

pomelo init HelloWorld

就可以创建一个名为HelloWorld的工程,回车之后首先会提示你使用什么socket,我选择的是native socket,也就是输入1。参考下面的文字提示。

 

D:\Pomelo-Server\npm-master>pomelo init HelloWorld

The default admin user is:

  username: XXXXXXX
  password: XXXXXXX

You can configure admin users by editing adminUser.json later.

Please select underly connector, 1 for websocket(native socket), 2 for socket.io, 3 for wss, 4 for socket.io(wss), 5 for udp, 6 for mqtt: [1]

上面输入1后,按下回车。之后,系统执行类似于下面的命令,最终自动生成工程框架。

create : HelloWorld
create : HelloWorld
create : HelloWorld\shared
create : HelloWorld\game-server\logs
create : D:\Pomelo-Server\npm-master\HelloWorld\npm-install.bat
create : D:\Pomelo-Server\npm-master\HelloWorld\npm-install.sh
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server
create : D:\Pomelo-Server\npm-master\HelloWorld\shared\server.crt
create : D:\Pomelo-Server\npm-master\HelloWorld\shared\server.key
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app.js
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app.js.mqtt
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app.js.sio
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app.js.sio.wss
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app.js.udp
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app.js.wss
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\package.json
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\app.js
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\app.js.https
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\bin
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\package.json
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app\servers
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config\adminServer.json
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config\adminUser.json
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config\clientProtos.json
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config\dictionary.json
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config\log4js.json
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config\master.json
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config\serverProtos.json
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\config\servers.json
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\bin
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\bin\component.bat
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\bin\component.sh
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app\servers
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app\servers\connector
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\css
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\image
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\index.html
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\index.html.sio
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app\servers\connector
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app\servers\connector\handler
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\css
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\css\base.css
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\image
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\image\logo.png
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\image\sp.png
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app\servers\connector\handler
create : D:\Pomelo-Server\npm-master\HelloWorld\game-server\app\servers\connector\handler\entryHandler.js
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\build
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\component.json
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\local
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\pomeloclient.js
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\pomeloclient.js.wss
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\socket.io.js
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\build
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\build\build.js
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\build\build.js.wss
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\local
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\local\boot
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\local\boot
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\local\boot\component.json
create : D:\Pomelo-Server\npm-master\HelloWorld\web-server\public\js\lib\local\boot\index.js

接下来就是安装 node modules 。
直接在工程目录(我的机器是D:\Pomelo-Server\npm-master\HelloWorld)下面,敲入命令:

npm-install.bat

上述命令将运行半分钟左右,生成跨好几屏的内容。文后参考文章中说,如果安装过程中卡住了,可以再试一次。我的机器上一下通过了。抓个部分截图你看看,如下:

wKiom1Tp077xRwgQAAQHLeqRv08142.jpg

打开资源管理器,看看整体的文件夹架构吧。

wKioL1Tp1Xah5WJ6AACy9DF5WgY082.jpg

 

测试工程

首先,我们启动game-server服务器:

仍然在上面的命令行窗口下,切换当前目录到game-server 目录下,运行如下命令:
node app.js

启动游戏服务器

wKioL1Tp1wWScOuoAAZVA5CW0WI208.jpg

从任务管理器即可看到,你看到运行着两个node.exe进程(在此省略截图)。

接下来,启动web-server服务器:

 

安装前确保已经装有 component(使用 cnpm install -g component 来安装)。

再启动另一个命令行窗口,进入 web-server目录下执行:

node app


即可启动 web-server。

wKiom1Tp1riQnwFRAAJvm2rVXfM176.jpg

一切顺利的话,我们就可以打开浏览器访问:http://127.0.0.1:3001/index.html 点击Test Game Server按钮就会弹出一个对话框显示 gameserver is ok 如下图。

 wKioL1Tp2DSzw2iwAAHjXkpY7js747.jpg

 

wKiom1Tp12KDZrtyAABRjlgCBsM437.jpg

 

至此,pomelo的环境安装完成了。

另外,请特别注意:pomelo早期版本有关安装教程与本文介绍的几处不相符合,而且本文介绍的是在WIN7 32下的安装测试过程。

参考:

http://my.oschina.net/u/555701/blog/373825

http://blog.csdn.net/wangqiuyun/article/details/9243263

http://nodejs.netease.com/topic/515279a0b5a2705b5a000983















本文转自朱先忠老师51CTO博客,原文链接: http://blog.51cto.com/zhuxianzhong/1614976,如需转载请自行联系原作者



相关文章
|
网络协议 物联网 Unix
最新的swoole-cli已可以支持Windows,手把手带你在windows体验swoole
想必使用PHP作为开发语言的童鞋应该都听说过swoole,大致都知道swoole是什么. Swoole 使 PHP 开发人员可以编写高性能高并发的 TCP、UDP、Unix Socket、HTTP、 WebSocket 等服务,让 PHP 不再局限于 Web 领域。Swoole4 协程的成熟将 PHP 带入了前所未有的时期, 为性能的提升提供了独一无二的可能性。Swoole 可以广泛应用于互联网、移动通信、云计算、 网络游戏、物联网(IOT)、车联网、智能家居等领域。使用 PHP + Swoole 可以使企业 IT 研发团队的效率大大提升,更加专注于开发创新产品。总的来说Swoole是PHP
1205 1
|
Java 定位技术 数据处理
windows下gdal的java开发环境搭建
本文介绍了gdal在windows环境下怎么搭建java开发,同时提供一个开发示例,通过输出gdal支持的数据驱动来演示其支持的数据类型,同时表明我们的环境搭建完成,可以基于java进行相应开发。
575 0
windows下gdal的java开发环境搭建
|
JSON JavaScript 前端开发
Windows环境下轻松搭建NodeJs服务器
Windows环境下轻松搭建NodeJs服务器
601 0
Windows环境下轻松搭建NodeJs服务器
|
8月前
|
缓存 JavaScript 开发工具
nodejs安装和环境配置-Windows
nodejs安装和环境配置
118 0
|
10月前
|
PHP Windows
windows下编译roadrunner和作为laravel服务器实践
windows下编译roadrunner和作为laravel服务器实践
104 0
|
11月前
|
SQL 网络协议 数据库
1.C#/.NET开发环境安装(Windows)
1.C#/.NET开发环境安装(Windows)
139 0
|
Java Scala 开发者
Windows 搭建S cala 开发环境|学习笔记
快速学习 Windows 搭建 Scala 开发环境。
143 0
Windows 搭建S cala 开发环境|学习笔记
|
Oracle Java 关系型数据库
Windows下JAVA开发环境配置
JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。本文主要讲解如何在WIndows环境下安装和配置JAVA开发环境、JAVA环境变量
1116 0
Windows下JAVA开发环境配置
|
JavaScript 前端开发 测试技术