要從JS調用Java,您可以使用Java.type
。有沒有辦法在Bindings中綁定java類?nashorn用綁定替換Java.type
所以更換:
scriptEngine.eval("Java.type('my.own.AwesomeObj')");
的東西,如:
Bindings bindings = new SimpleBindings();
bindings.put("AwesomeObj", my.own.AwesomeObj.class);
scriptEngine.setBindings(bingings, ScriptContext.GLOBAL_SCOPE);
我工作的一個框架,我要賺很多的可用於JS腳本類,最好不使用字符串連接和評估。目前它拋出一個異常的消息:AwesomeObj不是一個函數,有什麼意義。
感謝Attila的回答!我在調查過程中發現了StaticClass,它現在是內部的悲哀,也許以後會有一個更好的接口,可以在內核中使用。我會去'每班學習'選項。 – Kalidasya 2014-09-20 17:06:52
完美適用於枚舉thx! – 2017-05-15 20:51:05