在etherpad的源代码中,我见过类似的代码:
jimport(java.util.Date, "JDate");
但它似乎不是某种javascript标准。
怎么做?
答案 0 :(得分:4)
看起来您正在查看etherpad来源。他们在那里定义了一个名为jimport
的{{3}}。
如上所述,etherpad使用Rhino作为其Javascript引擎,可以轻松获得Java。
就足够了file = java.io.File
以“导入”它。
此函数使用辅助函数_jimportSinglePackage
将Java包注入本地Javascript范围。
此函数接收包名称,以及它将包注入的全局范围,并且给它a.b.c
本质上调用globalscope[c] = a.b.c
,以便import
这个Java封装
答案 1 :(得分:3)
在JavaScript中加载Java库的能力在很大程度上取决于您正在使用的服务器端JavaScript框架。
Rhino肯定支持加载Java。来自文档:
js> importPackage(java.io)
js> File
[JavaClass java.io.File]
答案 2 :(得分:1)
从JavaScript使用Java类的另一种方法:
<html>
<body>
<script type="text/javascript">
document.write(new java.util.Date());
</script>
</body>
</html>
有关详细信息,请参阅Call a Java method from Javascript。