代码之家  ›  专栏  ›  技术社区  ›  Todd R

我应该尝试在Java项目中重用Ruby代码吗?

  •  1
  • Todd R  · 技术社区  · 15 年前

    我不想“重新发明轮子”,我已经找到了一个Ruby项目,它在我的Java应用程序中提供了我所需要的功能(没有现成的Java项目可以满足我的需要——相信我,我已经看过了)。因此,在最佳情况下,我能够从Java代码(alajsr223)运行Ruby代码。

    然而,这个Ruby项目依赖于安装了几个gem。我对将整个Java应用程序转换成JRuby应用程序一点也不感兴趣,但我希望能够利用这个项目。有没有一种简单的方法可以将gem中的代码加载到ScriptEngine中,还是我只是在自讨苦吃?

    4 回复  |  直到 15 年前
        1
  •  2
  •   Stuart Sierra    15 年前

    JRuby是一个坚实的平台,与Java集成良好。但是Rubygems不能很好地与Java构建工具集成。

    如果所有gem(及其所有依赖项)都是纯Ruby,那么从JRuby使用它们在技术上是可能的,但是

        2
  •  2
  •   Bill K    15 年前

    主要是因为复杂性,我会说不。尽管这是主观的,但我个人还是宁愿花时间重新写一遍——你可以做一些改进,完成后,你会更好地理解它。

        3
  •  1
  •   psyho    15 年前

        4
  •  1
  •   sal    15 年前

    我已经重用了JRuby的Java代码,我不明白为什么这两种方法都不能实现。

    另一个想法是,你能运行Ruby代码,然后直接从Java应用程序调用一个web服务或一组web服务吗? Sinatra