1.原因
在Java9以后,引入了模块化系统的概念,有更严格的封装
不是以模块形式构建的项目在试图反射访问java.base模块中的非公开的API
2.解决
添加vm参数允许所有未命名模块访问
--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED
在Java9以后,引入了模块化系统的概念,有更严格的封装
不是以模块形式构建的项目在试图反射访问java.base模块中的非公开的API
添加vm参数允许所有未命名模块访问
--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED