私たちのプロジェクトでは、可変数の引数を持つluaからjavaメソッドを呼び出そうとしています。したがって、javaメソッドのコードは次のようになります。
public static void addEvent( String luaFile, String function,
int milliseconds, Object...args )
{
events.add( new TimerEvent( luaFile, function, milliseconds, args ) );
}
このメソッドをluaファイルから次の行で呼び出したいと思います。
mgr:addEvent( "luaFile.lua", "doSomething", 3000, var )
しかし、Luajavaを使用すると、常にエラーが発生します。
PANIC: unprotected error in call to Lua API (Invalid method call. No such method.)
「var」引数を削除したり、引数を追加したりしても機能しません。
したがって、Luaファイルで変数引数を使用してjavaメソッドを使用したことがあり、この問題を解決する方法のヒントを教えてくれる人がいるかもしれません。ArrayListを作成し、引数を追加してこのArrayListをJavaメソッドに渡すために必要になるため、Luaファイルであまり多くのコード行を使用したくないだけです。したがって、配列としてJavaに渡すことができる配列を作成する簡単な方法もあるかもしれません。したがって、ソリューションは必ずしもvargsを使用する必要はありませんが、簡単な方法だと思いました。
事前に助けてくれてありがとう