2011-06-02 71 views

回答

2

为此,您可以使用第三方库像Rhino,但有从Java调用JavaScript代码中没有直接的方法。虽然两者的名字相似,但它们与汽车和焦糖一样常见。

更一般地说,使用一种语言编写的程序与使用另一种语言编写的语言进行交互通常是棘手的,因为两种编程语言实现的内部不兼容。这条规则有许多例外,并且已经投入了大量的精力来使项目以多种语言工作,但是启动成本通常很高。

+1

那么无论是Mozilla/Rhino集成库还是JDK 1.6“ScriptEngine”的东西,从Java调用JavaScript实际上都非常简单。实际上,ScriptEngine工具可以将包装在实现任何API的ScriptEngine实例的对象上交回,并从该对象中直接调用JavaScript。 – Pointy 2011-06-02 23:03:20

+0

谢谢我会尝试它...我想这是非常多的IM寻找...(: – adi 2011-06-02 23:08:48

0

是的,您可以通过从Mozilla获取Rhino并使用其集成库或使用JDK 1.6“ScriptEngine”工具。

包含在JDK 6中的Rhino版本(Mozilla创作的Java实现的JavaScript引擎)相当老旧并且有问题,需要警告。

0

LiveConnect很好地做到了这一点,请参阅JSObject的参考和示例。您可能会对JSObject.eval感兴趣,这将使您能够在任何JavaScript对象的上下文中执行JavaScript代码。

+0

我认为这里的问题是关于服务器端Java代码,而不是applets。 – Pointy 2011-06-02 23:04:30

+0

哦,对不起。然后。 – Ryan 2011-06-02 23:05:45