![](http://news.cnblogs.com/images/logo/rails.gif)
英文原文:RailsInstaller Provides Easy Rails on Windows Installation
作者:Rob Bazinet 译者:张龙
RailsInstaller向Windows开发者提供了一种便捷的方式以轻松、快速创建Ruby on Rails 3应用。到目前为止,Windows开发者需要自己搭建好Ruby、RubyGems、Rails以及SQLite才能开始创建Rails应用。多亏了来自Engine Yard的Nic Williams博士及其团队,现在一切都变得简单异常。
目前的RailsInstaller提供了如下功能:
- 通过向导的轻松安装
- Rails 3.0.3
- Ruby 1.8.7——p330
- SLQite 3.7.3
- Git 1.7.3.1
- DevKit
InfoQ有幸采访到了Nic Williams博士以深入了解RailsInstaller项目及其现在和未来将提供的功能。
提到RailsInstaller,人们的第一个想法就是既然可以自己安装每一个组件,为何还需要RailsInstaller呢。
Rails新手需要一键安装的软件包尽快上手。如果你的朋友对Ruby on Rails感兴趣,那么你可以直接给他个URL,剩下的东西他自己就可以轻松搞定。如果你正在进行Rails培训课程,那么如何让所有学生都能尽快上手呢?这正是RailsInstaller的目标所在。用于帮助开发者快速上手Rails的一站式解决方案。
既然项目的大部分都是由Engine Yard的员工所资助的,我们想知道项目的开发是Nic Williams个人的事情还是Engine Yard公司的事情:
我们热爱Ruby,我们也热爱使用Ruby的开发者。在Engine Yard,我们都是Ruby用户,如果每个开发者,每个咨询师都能从Java/PHP/.NET转到Ruby on Rails进行开发,那将是多么好的一件事啊。如果我们能简化这种转换,那么这些开发者或许就会真的转换过来。这正是我们所期望的事情。
Engine Yard承诺支持开源并对Rails社区有所贡献,这个项目也是Engine Yard承诺的一部分。
这种项目由很多内容构成,我们很难独自完成一切。在被问到都有谁参与到了项目中,Nic博士提到了开源社区的一些知名人物:
Wayne E Seguin和Luis Lavena构建了Windows 1.0.0版。Wayne完成了两周的sprint,Luis则作为指导。Wayne因其成功的RVM项目(Ruby Version Manager,Ruby版本管理器)而名声大噪,并于最近回到了Engine Yard。如果你不知道,那么应该清楚现在Ruby的版本不止一个,但RVM可以跨越多个平台保持Ruby的简单性与一致性,这样你就可以安装和使用任意的Ruby版本了。RVM用户只需选择需要使用的Ruby即可。
Luis则是Ruby on Windows的教父级人物。他曾经独自开发出了一键式的安装器(One-Click Installer),后来又创建了后继者——新的RubyInstaller(“RubyInstaller for Windows“)。在过去5年多的时间内,Ruby的一键式安装器已经有500多万的下载量了,不可思议吧。
Ruby社区的很多人都知道Ruby 1.9.2是最快、最棒的Ruby实现。RailsInstaller带有Ruby 1.8.7,我们想知道为什么会带有这个版本呢:
RailsInstaller安装器有两个目标(本周我们发布了一个Windows版本的)——人们能否在5分钟内上手Rails应用开发;是否使用了每个Ruby开发者都在使用的基本工具?第一个目标是让用户喜欢上Rails与Ruby;第二个目标是让他们能够融合到现有的、极富激情的Ruby社区。这种想法指导着我们的决策。这也是Windows版本的安装器为何选择Ruby 1.8.7而非Ruby 1.9.2的原因所在。在当今的Windows领域,用户如果使用Ruby 1.8.7会获得更好的体验,Bug也更少。Ruby on Rails与Ruby新手并不需要知道这些。因此我们替这些新用户做了决定,将最棒的Ruby工具打包在一起并随RailsInstaller安装器一同发布。
如果RailsInstaller用户喜欢上了Ruby,了解了Ruby 1.9.2并问”我怎么没有使用Ruby 1.9.2?“并且想要尝试一下,那么他们就可以去做了。他们会下载Ruby 1.9.2、下载DevKit、安装所有的Gems,发现Bug,并成为Ruby社区的一员。
有一天,我们会携带Ruby 1.9.2的。也许是Rubinius或JRuby。无论哪个都会给用户最棒的体验。
但目前,我们只希望用户能够爱上Ruby,爱上Rails。
InstantRails已经成为Windows开发者上手Ruby on Rails的可靠环境。InstantRails提供了一个图形用户界面以帮助不熟悉Ruby或Rails所用的命令行工具的Windows用户。Nic博士谈到了关于RailsInstaller未来的思考以及是否应该向开发者提供图形用户界面:
这里我想说的是,InstantRails审核者Rob Bazinet也是InstantRails最后一个维护者,他与我就InstantRails 2011(现在叫RailsInstaller)谈了很久。这是一个说不清楚的问题。从2005年到2008年,我们在使用InstantRails,这也是我2005年开始Rails开发时所用的工具。但遗憾的是,InstantRails在2007年曾停止开发了,最后一个发布版中带有Ruby 1.8.6,它与Rails 3不兼容。InstantRails的代码基也太老了 ——我相信它可以追溯到2005年之前——我们认为开始新的代码基是最快的途经了。
谢谢你Rob,你更新了InstantRails站点,加上了一个指向RailsInstaller 1.0的链接,将其作为InstantRails的“下一版本”。
我还不太确定对GUI到底采取何种处理方式。构建一个独立的GUI?只是为了RailsInstaller for Windows的用户?还是再为OS/X创建一个RailsInstaller GUI?还是与现有的流行IDE集成,还是与Windows或OS/X用户在开始学习Rails时所用的文本编辑器集成?或许我们应该将注意力放在与Visual Studio和Xcode的集成?
这个问题问的好,但我现在还没有明确的答案,不好意思。
知道如何在Linux上运行Rails的开发者应该知道Apache Web Server的复杂细节,但Windows开发者对这方面就了解甚少了。既然开发者主要使用IIS,那么讨论就应该转移到部署与托管策略上了:
RailsInstaller之所以优秀,主要在于它关注于“知道这些事情的人”与这些话题之间的关系。比如说, 能够让IIS和Rack(Rails应用低层次的接口)协作工作。Brian Hogan列出了Windows用户在使用Ruby时可能感兴趣的问题:
如果我们能提供Windows部署的解决方案,那么就可以将其打包到RailsInstaller当中或是作为扩展包。
- “如何将其与ActiveDirectory搭配使用”?
- “如何使用目前正在使用的所有.NET程序库”?
- “如何将其与SharePoint集成”?
- “最后,他们会问关于IIS的问题”。
在被问到如何能让开发者参与到项目的开发当中时,Nic博士说到:
安装器与Web站点都是开源的, 托管在GitHub上。可以 在Pivotal Tracker上查看到RailsInstaller for Windows的发布计划。
对于任何项目,特别是新项目来说,重要的是能为开发者提供支持,让他们能够提出问题、汇报Bug以及提出建议。
RailsInstaller Google Group目前的关注点放在了开发者的讨论上。发现的大多数“Bug”最后都会被再次汇报给每个单独的打包项目,比如RubyInstaller、Core Ruby、Rails、Bundler等等。系统向用户提供了一个入口点,用户可以提出自己的问题,社区可以为用户提供解决方案。希望这能对Rails新手提供帮助。
如果我们能够成功地选择并将条目打包到安装器中,那么我们基本就不会遇到与Bug相关的问题了,但这只是我的梦想而已。
发布RailsInstaller,获得所有的积极反馈。这是我的梦想。
请感兴趣的读者访问RailsInstaller站点以了解关于该项目的更多信息以及上手指南。