将Ruby库(permailer)打包为.jar(使用JRuby)

时间:2015-06-28 02:50:57

标签: java scala jar jruby

基本上,我们需要使用Premailer(https://github.com/premailer/premailer)作为我们Scala后端的一部分,但是由于它是用Ruby编码的,我们需要使用类似JRuby的东西,这样我们就可以在JVM上执行它了。

理想情况下,我们希望创建一个单独的clean .jar,它只包含JRuby(作为依赖项或实际的JAR本身),Premailer加上一个瘦Java包装器让我们在Java中调用Premailer API(因此在Scala中)。

我们的想法是,我们显然只是通过Scala将预编译器jar作为依赖项包含在SBT后端中,然后调用瘦Java包装器。有没有人知道是否有一个工具可以让你这样做,或者是否有关于如何做到这一点的教程?

编辑:看来java包装器已经存在,它在这里https://github.com/r-shah/java-premailer-wrapper,所以看起来它现在只是一个正确打包它的问题

1 个答案:

答案 0 :(得分:2)

似乎已经完成了创建界面所需的工作(以便您从JRuby的Java / embed API中抽象出来) - 正如您所知道的那样。

该项目已经使用Maven打包,包括the JRuby jar and the ruby dependencies用于预生成器gem。

虽然找不到那些(在Maven Central上),但它们应该工作,因为它们是从https://rubygems.org资产自动生成的(rubygems-proxy.torquebox.org这样做)...因此{{1在本地,您应该全部设置