Skip to content

pushJavaObject注入对象的类成员类型Integer无法识别 #4

@jsuisen

Description

@jsuisen

Java:

    MyBean myBean;
    //测试全局变量参数读写
    @Test
    public void testUpdateMyBean() {
        try {
            Log.d("testUpdateMyBean", "=============== test1");
            LuaState lua = LuaStateFactory.newLuaState();
            lua.openLibs();
    
            myBean = new MyBean();
            myBean.name = "zhang3";
            myBean.age = 18;
    
            System.out.println(myBean);
    
            lua.pushJavaObject(myBean);
            lua.setGlobal("myBean");
    
            String str = Config.getRawString(ctx, R.raw.testupdatemybean);
            System.out.println(str);
            int result = lua.LdoString(str);
            System.out.println("result==" + result);
            String msg = lua.toString(-1);
            System.out.println("msg==" + msg);
    
            lua.getGlobal("myBean");
            myBean = (MyBean) lua.toJavaObject(-1);
            lua.pop(1);
            System.out.println(myBean);
    
            lua.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        Log.d("testUpdateMyBean", "=============== test2");
    }
    
    public static class MyBean {
        private String name;
        private Integer age;
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public Integer getAge() {
            return age;
        }
    
        public void setAge(Integer age) {
            this.age = age;
        }
    
        @Override
        public String toString() {
            return "MyBean{" +
                    "name='" + name + '\'' +
                    ", age=" + age +
                    '}';
        }
    }

testupdatemybean.lua:

        myBean:setName('li4')
        myBean:setAge(50)

错误日志:

Invalid method call. No such method.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions