Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java+;Rails:从Rails应用程序中调用一些Java代码_Java_Ruby On Rails_Ruby - Fatal编程技术网

Java+;Rails:从Rails应用程序中调用一些Java代码

Java+;Rails:从Rails应用程序中调用一些Java代码,java,ruby-on-rails,ruby,Java,Ruby On Rails,Ruby,我有一个rails应用程序。我还用Java编写了一个方法,它构造了一个四维树结构。它用于查询我的数据库。代码比较复杂,我不想再次用Ruby重写它。有什么方法可以使用我在rails应用程序中编写的Java方法吗 这将适用于Heroku托管的应用程序 如果是这样,我应该如何着手学习如何实现这一点?我应该用谷歌搜索哪些关键词?有人能告诉我已知的好资源吗 非常感谢。您可以通过网络对话向Ruby客户机公开Java方法。通过服务器公开Java代码有很多很棒的抽象层 一个这样的抽象层是。您可以使用Thrift

我有一个rails应用程序。我还用Java编写了一个方法,它构造了一个四维树结构。它用于查询我的数据库。代码比较复杂,我不想再次用Ruby重写它。有什么方法可以使用我在rails应用程序中编写的Java方法吗

这将适用于Heroku托管的应用程序

如果是这样,我应该如何着手学习如何实现这一点?我应该用谷歌搜索哪些关键词?有人能告诉我已知的好资源吗


非常感谢。

您可以通过网络对话向Ruby客户机公开Java方法。通过服务器公开Java代码有很多很棒的抽象层

一个这样的抽象层是。您可以使用Thrift的代码生成引擎为Ruby端创建一个客户端库,并为Java服务器创建一个接口。您可以在任何地方运行Java RPC服务器,并在Heroku上的Rails应用程序中从Ruby客户端调用它

或者,如果这对于您正在做的事情来说太重了,您也可以直接将方法调用的结果发送给Java程序。在Ruby中,您可以使用backticks(即
`javamyprogram`
)进行shell操作。

您可以看看RJB(RubyJava桥)。