私はLuaJavaを介してJavaでのLuaスクリプトの使用法を学び始めています。私のIDEはEclipseです。
しかし、この単純なHello Worldスニペットを実行すると、Eclipseコンソールに出力がありません。
ここからコードスニペットを取得しました
package com.cpg.lua;
import org.keplerproject.luajava.LuaState;
import org.keplerproject.luajava.LuaStateFactory;
public class Hello
{
public static void main(String[] args)
{
LuaState luaState;
luaState = LuaStateFactory.newLuaState();
luaState.openLibs();
luaState.LdoFile("hello.lua");
luaState.close();
}
}
hello.lua
function hello()
print("Hello World from Lua!")
end
hello()
しかし、下のスクリプトは完全にうまく機能します。
hello2.lua
print("Hello World from Lua!")
関数定義を内部に持つスクリプトがJavaから呼び出されたときに何もしないのに、コンソールから実行されたときに完全に機能する理由を誰もが知っていますか?