【问题标题】:Can you deploy JRuby whilst using one or more Gems?您可以在使用一个或多个 Gem 的同时部署 JRuby 吗?
【发布时间】:2012-11-18 07:05:25
【问题描述】:

在进行了一些谷歌搜索后,我得出的结论是,我非常不了解 JRuby 和 Gems 之间的关系。我正在 netbeans 中用 JRuby 开发一个程序。我知道您只能在 JRuby 中使用纯 Ruby 编写的 gem(我假设 netbeans JRuby 获得的 Gem 只是这些类型的 gem)。

我的问题是,如果我在程序中使用 gem,它会正确部署吗?目标计算机将只有 Java JRE,无法下载 JRuby 或 gem。

我应该完全避免使用 gems,还是应该将 gem 编译成 java 字节码,或者我还能做些什么?

【问题讨论】:

    标签: rubygems jruby


    【解决方案1】:

    JRuby 是一个 ruby​​ 实现,您确实可以像使用 MRI 一样使用 gems。

    gem 可以在 ruby​​ 中实现,在这种情况下,ruby 代码将由 JRuby 执行并根据需要进行 JIT 处理,就像您自己的 JRuby 代码一样;在 Java 中,在这种情况下它已经是 Java 字节码;甚至在 C 中,因为 JRuby 支持 C 扩展,但它们的使用更多的是“perilous”。

    如何将 gems 与应用程序打包在很大程度上取决于您如何部署它。您可以将它们复制到一个文件夹中,然后将该文件夹添加到LOAD_PATH。如果您使用 warblerrawr 之类的库,它们会为您将 gem 打包到您的应用程序中。如果您使用 rails,您也可以使用 bundler,就像您通常使用 MRI 一样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-02-21
      • 1970-01-01
      • 2019-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      相关资源
      最近更新 更多