如何使用 java 11 运行 Wildfly 14?

Posted

技术标签:

【中文标题】如何使用 java 11 运行 Wildfly 14?【英文标题】:How to run Wildfly 14 with java 11? 【发布时间】:2019-03-21 23:23:07 【问题描述】:

我在其运行时配置中使用 Wildfly 14 和 Java 11。当我启动服务器时,我得到了

org.jboss.modules.ModuleNotFoundException: java.se
    at org.jboss.modules.Module.addPaths(Module.java:1266)
    at org.jboss.modules.Module.link(Module.java:1622)
    at org.jboss.modules.Module.relinkIfNecessary(Module.java:1650)
    at org.jboss.modules.ModuleLoader.loadModule(ModuleLoader.java:296)
    at org.jboss.modules.Main.main(Main.java:437)

【问题讨论】:

为什么java.se 默认在模块路径上不可用似乎很奇怪!您确定没有其他链接库对此处导致的异常负责吗?您能指导我们完成您的设置吗? @nullpointer 它不应该是设置问题。我在issues.jboss.org/browse/MODULES-372 上找到了一个讨论,其中有人提到了对 java.se 的更改。还有issues.jboss.org/browse/WFCORE-3962。 问题似乎已解决:issues.jboss.org/browse/WFLY-10937。我刚刚在 ubuntu 14.04 上安装了 WildFly 15.0.1.Final,它无需修改即可工作。 @Kawu 是的,它是几个月前修复的(我在答案中也说过)但不是 14 岁,这就是问题所在。 【参考方案1】:

Java 11 中有一些变化,必须在模块路径上读取 java.se。在 Wildfly 的 VM 参数下的运行配置中添加

--add-modules=java.se

应该在以后的版本中修复。

【讨论】:

能否请您指出“在 Wildfly 的 VM 参数下的运行配置中”?我在哪里可以找到那个? @DorianGray 例如,如果您通过standalone.sh 或.bat 以独立模式启动服务器,请在设置JAVA_OPTS 变量的位置添加以下行:

以上是关于如何使用 java 11 运行 Wildfly 14?的主要内容,如果未能解决你的问题,请参考以下文章

wildfly 12 和 spring java 配置,不工作,403 错误

Wildfly 11.0.0 最终 java.lang.OutOfMemoryError:元空间

内存使用量增长,直到VM在使用Java 8运行Wildfly 9时崩溃

从 Wildfly 11 升级到 Wildfly 15 时的日期序列化问题

使用 Wildfly 8.1.0 Final 部署 Java @Schedule

如何使用多个独立实例管理 WildFly/JBoss