我有一些问题让这个库在我的OSX安装上工作.特别是,我想将它与Java 1.6 VM一起使用,但在我编译之后,我得到以下内容:
java -cp "luajava-1.1.jar" org.keplerproject.luajava.Console
Exception in thread "main" java.lang.UnsatisfiedLinkError: /Users/daniel/src/luajava- 1.1/libluajava-1.1.jnilib:
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1822)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1739)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at org.keplerproject.luajava.LuaState.<clinit>(LuaState.java:92)
at org.keplerproject.luajava.LuaStateFactory.newLuaState(LuaStateFactory.java:59)
at org.keplerproject.luajava.Console.main(Console.java:49)
Run Code Online (Sandbox Code Playgroud)
我正在使用Lua 5.1.4运行OSX 10.5.8我还将我的OSX默认VM更改为1.6.0,因为:
/System/Library/Frameworks/JavaVM.framework/Home -> Versions/1.6.0/Home/
/System/Library/Frameworks/JavaVM.framework/Versions/Current -> 1.6.0/
/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK -> 1.6.0/
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?我注意到当我使用Java 1.5时,一切都很棒.除了我不想1.5,我想1.6.
我正在为 Lua 使用 LuaJava 和 C 代码。我想要做的是读取作为资源字符串存储在 Android 应用程序中的 Lua 源,以便可以执行读入的 Lua 源。我需要知道如何使用 LuaJava 或 C 语言来做到这一点。
我想知道如何使用字符串在 Lua 中创建 Lua 模块。
换句话说,我将存储在 .lua 文件中的 Lua 源代码改为字符串。然后我想将此字符串的内容作为可以调用的可用模块加载到 Lua 中。
我看到有一个loadstring()函数,但不确定如何为 LuaJava 或 C 调用它。
我不想让 Lua 在文件系统中搜索这个文件,我会找到这个文件并将其转换为字符串。获得字符串后,我需要知道如何将文件内容的字符串副本作为模块加载到 Lua 中,然后我可以调用该模块。
我还想知道在调用后loadstring(s)模块是否仍可用于后续函数调用而无需重新加载loadstring()。