
Options for distribution of an offline Ruby on Rails application我正在开发使用Ruby on Rails的应用程序,主要是作为学习该语言的借口。 这并不是要成为基于Web的应用程序-也许我选择了错误的语言,但是... 我的理解是,为了在其他人的计算机上运行此应用程序的实例,他们将需要在Rails上安装ruby,Web服务器(也许是Webrick,以及我的应用程序代码)。 > 我只是想知道是否还有其他选择将应用程序作为独立应用程序分发,或者仅仅是将Web浏览器和ROR与我的应用程序打包在一起以进行简单的一步安装的简单方法?铅> 我个人从来不需要这样做。但是,我遇到了本教程http://www.erikveen.dds.nl/distributingrubyapplications/rails.html,我认为这会有所帮助。本教程介绍了如何将Rails应用程序实际转换为独立的exe文件。 注意,弹弓似乎是一个无效的项目(请参阅注释)。我将把这个答案留在这里是出于历史目的以及它回来的机会 Joyent的弹弓可能是一个不错的选择。
以下是一些其他链接,可帮助您进行评估和/或帮助您入门:
大多数人将ruby程序(包括Rails webapps)作为独立exe交付的方式是通过rubyscript2exe。他们在http://www.erikveen.dds.nl/distributingrubyapplications/rails.html中描述了如何打包Rails应用程序。 Ruby,Rails和所有相关的库将包含在EXE文件中。 就像其他人提到的那样,Ruby不一定是Rails,如果您真的想以一种简单的方式在Ruby中编写可分发的GUI应用程序,那么Shoes是一个不错的开始。 您始终可以考虑将Ruby编译为JVM字节码(通过JRuby)或.NET字节码(通过IronRuby),以分发给拥有这些虚拟机并且不想安装Ruby运行时的人。铅> 您可能想查看Shoes以便在Ruby中构建桌面应用程序。 Rails确实适合构建网站。 您可以通过将Ruby on Rails冻结为要在项目中使用的Rails版本来包含它。他们称此为冻结。用户将不必安装Rails即可使用您的应用程序。您可以使用项目中使用的任何库来执行此操作。如果项目使用库,则将其放置在项目中的Vendor文件夹下。然后使用类似于@Josh回答的工具对其进行打包。 尽管如此,您将需要Web服务器来运行项目。这没有办法。在这方面,Ruby on Rails就像ASP.NET,因为它是服务器端框架。服务器运行代码,并使用Rails框架将HTML输出到浏览器。 不幸的是,您可能选择了错误的框架来执行所需的操作。您可能要检查Shoes,而不是Ruby on Rails,这是一个使用Ruby开发GUI应用程序的框架。 可能是Rails上的装备? 您没有具体说明它是否应该是GUI应用程序。从其他答案中,我会猜测是这样。 因此,您需要澄清您的目标是什么。 RoR是Web应用程序的专用框架。如果您的目标是学习RoR,那么我想给自己准备一些便宜的虚拟主机,并让自己成为一个应用。如果您的目标是学习Ruby,而不必学习Rails,那么Shoes,IronRuby,JRuby,MacRuby和其他工具可能是不错的选择。 |