首页 / 知识

分发离线Ruby on Rails应用程序的选项

2023-04-14 22:16:00

分发离线Ruby on Rails应用程序的选项

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的弹弓可能是一个不错的选择。

Joyent Slingshot allows developers to deploy Rails applications like a standard desktop application, which work online and offline (with synchronization), have drag and drop, and interact with all the other desktop applications.

With Joyent Slingshot:

  • Create a hybrid Web/desktop application
  • Synchronize online and offline data
  • Use the same code for online and offline application(s)
  • Deploy and update your application easily
  • Drag into and out of application

以下是一些其他链接,可帮助您进行评估和/或帮助您入门:

  • 介绍Joyent弹弓
  • 基本应用演练
  • 弹弓Wiki

大多数人将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和其他工具可能是不错的选择。


应用程序离线选项语言

最新内容

相关内容

猜你喜欢