问题标签 [luaj]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - LuaJ 中 lua 模块和基于元表的类的组合
我正在遵循 本教程中简单 lua 类的示例,但尝试将类定义存储在单独的文件中并作为模块加载
我创建了一个名为 List 的简单类,我可以创建一个列表,并填写以下代码(List.lua):
要使用它,我只需要输入
到目前为止,一切都很好。
问题
现在我要将 List 移动到 LuaJ 中的一个包中,这样我就可以在 Java 中执行 List 实现。
我可以用同样的方式创建列表,但是我现在找不到在对象 a 上调用填充的方法,例如a:fill(0)
不起作用。表明
我能做到List.fill(a, 0)
。这是 LuaJ 的限制,还是有其他方法可以a:fill(0)
工作?
java - 如何将`.jar`文件导入lua代码并创建java实例?
这里是 ex如何调用 java obj 的新实例mylib.jar
,但没有解释如何导入
例如。我有mylib.jar
,有课com.example.MyClass
。
我想创建java类实例并调用这个方法
如何将.jar
文件导入lua
代码,并从中创建实例MyClass
并调用方法?
luaj - 如何在 Luaj 中获取“android.provider.ContactsContract.Contacts”字段
我使用 Lua Interpreter 为我的 iGO 导航器获取信息,我需要从 android.provider.ContactsContract.Contacts 获取一些字段
我成功了
我尝试获取联系人
或者
没有成功
基本上我需要在那里得到结果
java - LuaJ(Java Lua 库):从 Lua 文件调用其他文件中的 Lua 函数
首先,我知道这个问题,但我认为它不太适合我正在做的事情。无论哪种方式,答案都使我的观点有些混乱。我想为我的问题找到一个更具体到我正在做的事情的答案。
这里的目标是让 lua 文件chatterToolsTest
成功将“测试成功”打印到控制台。不幸的是,我目前的方法不太奏效。有人可以帮忙吗?我在 Lua 方面不是最擅长的,所以在这种情况下,我的 Lua 代码可能是错误的。请查看下面的片段。
另一个限制:我无法使用 java 端的模块。两个 Lua 文件之间的任何引用都只能通过 Lua 获得。这是因为我正在为 Java 项目开发一个修改系统,并且需要 Lua 能够在 Java 端进行最小的更改。
请记住,我没有将 Lua 文件存储在 JAR 文件或任何包中,它们包含在 Java 程序的根工作目录中的文件夹中,就像资源文件夹一样。
chatterToolsTest.lua
:
chatterTools.lua
,由 调用的类chatterToolsTest.lua
:
这两个文件都在一个名为的文件夹中world/NOKORIWARE/lua/
:
最后,这是使用 LuaJ 调用它们的 Java 测试类:
这是我运行 Java 程序时打印的错误:
感谢任何帮助或相关资源的链接。
java - 在java中执行lua脚本
我试图在 android studio 中执行一个 lua 脚本,为此我使用了来自http://www.luaj.org/luaj/3.0/README.html的 Luaj 库?.
我用这个我的lua文件在资产中我只是把print(“hello”)放在我的lua文件中,所以我应该在我的文本视图中得到你好,但我总是在我的文本视图中得到“nil”有什么解决方案吗?
lua - luaj 可以将脚本转换为 lua 5.2 的二进制表示
我正在尝试使用 string.dump 将脚本转换为二进制表示,但我看到 luaj 3.0.1 表示与 lua 5.2 不同,有一些方法可以改变这一点,或者将 luaj 3.0.1 表示转换为 lua 5.2?
代码
十六进制输出
java - LuaJ 在强制 Java 对象中迭代对象数组
我正在使用 LuaJ 3.0.1,并且在遍历我的 Lua 脚本中强制 Java 对象中包含的数组时遇到问题。目前,这就是我正在做的事情:
我有一个包含对象数组的 Java 类。就像是
我有一个LuaFunction将 Foo 作为其参数之一。我调用这个函数,传递一个 Foo 的实例,如下所示:
但是,问题出现在 Lua 脚本本身,我需要遍历 Bar 数组。我尝试使用以下代码,但这会产生一个 org.luaj.vm2.LuaError,并在包含该ipairs
函数的行上显示消息“bad argument: table expected, got userdata”。
当 Foo 对象被强制转换为 Lua 时,Bar 数组似乎没有变成表格,而是变成了一种userdata
类型。因此,它不能传递给ipairs
函数。
有什么办法可以让Bar
数组在 Lua 中被视为表?或者,除此之外还有什么ipairs
更适合循环遍历数组的选项吗?
java - 如何从java中的lua脚本中获取本地人
我有这个lua脚本:
在java中我有:
如何访问 lua 脚本中表中的值?
lua - 将 LuaTable 写入文件
我正在尝试用 LUAJ 编写一个表,我想将它导出到一个文件中。可能吗?
输出文件应包含如下内容:
我找不到将 parentTable 的内容导出到文件的任何选项。
谢谢。
java - LuaJ中newInstance时如何覆盖java对象的方法
我在Java中有一个Person类:
我在LuaJ中创建了一个Person实例:
但我想覆盖talk方法,我该如何在LuaJ中做到这一点?
在Java中是:
感谢帮助