-1
私はJavaで動作する(JavaScript)スクリプトを手に入れようとしています。JavaスクリプトNoSuchMethodException?
私はそうのように(必要なすべてのスクリプトエンジンに関連する事柄のインスタンスと一緒に)私のJavaプログラムで定義されたJavaScriptでプログラムを、持っている:私はこれを呼び出して実行するプログラムの開始時に
static ScriptEngineManager engineManager = new ScriptEngineManager();
static ScriptEngine jsengine = engineManager.getEngineByName("js");
static Invocable jsinvoke = (Invocable) jsengine;
static String program =
"//importPackage(javax.swing);" +
"function myMethod(x, y) {" +
"return x+y;" +
"}";
、これは文句なしで動作します。次に
try {
jsengine.eval(program);
} catch(ScriptException e) {e.printStackTrace();}
、私はこれでmyMethod
を呼び出す:
try {
jsinvoke.invokeFunction("myMethod", x, y);
} catch(ScriptException se) {
se.printStackTrace();
}
catch(NoSuchMethodException nsme) {
nsme.printStackTrace();
}
エラーjava.lang.NoSuchMethodException: no such method: myMethod
を返します。それは明らかにJavaScriptに存在するので、私は何を間違えたのですか?
改行がありません。ナイスキャッチ。 –
えええええええええええええええええええええええええええええー:) – mprabhat
彼は彼のJavascriptの文字列の代わりに、Javaの全体の行をコメントアウトすることができます。同じ効果、バグを除いたもの。 –