编程语言
首页 > 编程语言> > Java9 以上反射报错

Java9 以上反射报错

作者:互联网

Java9 以上反射报错

问题

  在写javaFx的时候,进行http请求数据库登录操作,要将返回的json字符串转化类对象,下面代码一直报错。

// json字符串转类对象
JavaType javaType;
ResponseBean<T> data = new ObjectMapper().readValue(json, javaType);

  报了如下错误:

java.lang.reflect.InaccessibleObjectException: Unable to make protected cc.nsurl.bean.ResponseBean() accessible: module cc.nsurl.controllers does not "opens cc.nsurl.bean" to module com.fasterxml.jackson.databind

  打不开类,就无法反射。

解决

  在 javaFx 项目中添加文件 module-info.java ,整体项目结构如下:

-- src
   -- main
       -- java
          -- module-info.java

在此java文件中配置:

module cc.nsurl.controllers {
    // 需要反射的类  opens  自己写的类  to  第三方库
    opens cc.nsurl.controllers to javafx.fxml;
    opens cc.nsurl.bean to com.fasterxml.jackson.databind;
    exports cc.nsurl.controllers;
}

标签:反射,java,cc,module,controllers,nsurl,报错,Java9,opens
来源: https://blog.csdn.net/Sakura_Logic/article/details/120516896