1. 使用java17 版本会报错:
2. 原因:
java17 的模块化,模块系统将 Java 分成了若干个可以独立部署和运行的模块,使得 Java 应用可以更快地启动并更好地利用硬件资源。但在 java 模块化之后,有些内部类不能被访问了,在运行时报错
3. 解决方案:
4. 编辑vm options:
5. 加入以下内容(重点):文章来源:https://www.toymoban.com/news/detail-734097.html
--add-opens
java.base/java.lang=ALL-UNNAMED
--add-opens
java.base/java.lang.reflect=ALL-UNNAMED
--add-opens
java.base/java.lang.invoke=ALL-UNNAMED
--add-opens
java.base/java.math=ALL-UNNAMED
--add-opens
java.base/sun.net.util=ALL-UNNAMED
--add-opens
java.base/java.io=ALL-UNNAMED
--add-opens
java.base/java.net=ALL-UNNAMED
--add-opens
java.base/java.nio=ALL-UNNAMED
--add-opens
java.base/java.security=ALL-UNNAMED
--add-opens
java.base/java.text=ALL-UNNAMED
--add-opens
java.base/java.time=ALL-UNNAMED
--add-opens
java.base/java.util=ALL-UNNAMED
6. 别人的文章只有一两个还是会报错,将上面的全部配置后就不会出现此问题!
文章来源地址https://www.toymoban.com/news/detail-734097.html
到了这里,关于Jdk17 启动报错, java17 module java.base does not “opens java.math“ to unnamed module @1649b0e6的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!