gpt4 book ai didi

java-9 - 如何在运行时包含 java 9 模块?

转载 作者:行者123 更新时间:2023-12-04 17:44:01 25 4
gpt4 key购买 nike

我有一个服务器套件,我正在尝试在 java9 JDK 上进行测试(找到 here,我使用的是 64 位 Linux 版本),但是在启动后不久我遇到了以下错误:

java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException

Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:533)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:186)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:476)

服务器工具包在使用 java8 时启动没有问题。不知何故,我需要告诉运行时系统包含 javax.xml.bind模块,但是我是 java9 的新手,除了将整个服务器工具包重新编译到一个模块中并添加对 javax.xml.bind 的依赖项之外,我不知道如何做到这一点。模块。有没有办法解决这个错误,不需要我将服务器套件重新编译成模块?

最佳答案

Java EE 模块随 JDK 一起提供,但 not resolved by default java.xml.bind 就是其中之一。在这种情况下,它们需要明确地包含在 --add-modules 中。 .

在您的情况下,使用 --add-modules java.xml.bind 启动.

关于java-9 - 如何在运行时包含 java 9 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42907605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com