2011-08-12 83 views

回答

13

看看Daniel Spiewak的this report,他在最近的OSCON上讨论了与各种JVM语言创建者之间的互操作性问题。它不会回答你的任何问题,但可能会让你更好地理解可能出现的问题。

但有一件事,我可以肯定地告诉你。既然Scala可以从Java调用,那么任何可以调用Java的东西都可以调用Scala。至于Scala调用Jython,这取决于Java是否可以调用Jython - 如果可以的话,这是可能的。但是,互操作性问题可能存在。

+2

谢谢;你的回答指向了正确的方向。我研究过它,可以从Java调用Jython;推荐的方法是使用将Python对象转换为良好的Java对象的工厂。参见[Jython.org](http://www.jython.org/faq2.html)和[Python.org](http://wiki.python.org/jython/JythonMonthly/Articles/October2006/3)。 –

+1

但是,从Java调用Scala代码可能会很尴尬 - 您需要了解Scala如何翻译以及何时使用可能变得非常难看的复杂Scala功能。 – Blaisorblade

+1

@Blaisorblade在所有JVM语言中,最好的互操作性结果来自于提供针对Java的API。 –