无法从java为hmget调用Redis lua脚本

无法从java为hmget调用Redis lua脚本,java,lua,redis,lua-scripting-library,Java,Lua,Redis,Lua Scripting Library,我是Redis新手。请查找下面的Redis lua脚本,该脚本使用Redis hmget命令返回值。我正在执行nil检查。如果值不是nil,则返回从Redis pcall检索的值,否则返回none public static final String LOAD_PARAMS_LUA_SCRIPT = local jobType = redis.pcall('hmget',KEYS[1],KEYS[2]) if jobType ~= nil then return jobType else jo

我是Redis新手。请查找下面的Redis lua脚本,该脚本使用Redis hmget命令返回值。我正在执行nil检查。如果值不是nil,则返回从Redis pcall检索的值,否则返回none

public static final String LOAD_PARAMS_LUA_SCRIPT = local jobType = redis.pcall('hmget',KEYS[1],KEYS[2]) if jobType ~= nil then return jobType  else jobType = 'none' end;
我正在从java调用lua脚本,如下所示:

    List<String> keys = Arrays.asList("1000.123","status"); 
    List<String> args = Arrays.asList(); 
    if(!this.connection.scriptExists(LOAD_PARAMS_LUA_SCRIPT)) {
                    this.connection.scriptLoad(LOAD_PARAMS_LUA_SCRIPT);
    }

ArrayList<String> test = (ArrayList<String>)connection.eval(GET_BULK_JOB_PARAMS_LUA_SCRIPT, keys, args);
            System.out.println("test:" + test);
List key=Arrays.asList(“1000.123”,“status”);
List args=Arrays.asList();
如果(!this.connection.scriptExists(加载\u参数\u LUA\u脚本)){
this.connection.scriptLoad(LOAD_PARAMS_LUA_SCRIPT);
}
ArrayList test=(ArrayList)connection.eval(GET_BULK_JOB_PARAMS_LUA_脚本、键、参数);
System.out.println(“测试:+测试”);

如果我遗漏了什么,请告诉我。我每次得到的响应都是空的。

在原始redis上对我很好。可能键错了?来自java的调用正确吗?@cmhai我不知道您正在使用的确切客户机,但总体上看起来还可以。如果手动运行脚本会发生什么情况?错误'eval'命令的参数数目错误它应该是
eval“2
。为我工作