【问题标题】:How to fix Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter [duplicate]如何修复线程“main”java.lang.NoClassDefFoundError中的异常:javax/xml/bind/DatatypeConverter [重复]
【发布时间】:2018-09-15 22:23:17
【问题描述】:

我看过一些关于它的帖子,但它并没有真正帮助我......

我有 java JDK 10。在 Windows 10 64 位上运行。我正在尝试使用的是机器人。关于它的github链接是here

这是我正在执行的脚本的日志

C:\Users\administrator\Downloads\vHackOSBot>java -jar vHackOSBot.jar
20:15:09 INFO [UpdateService] Creating UpdateService...
20:15:09 INFO [MiscService] Creating MiscService...
20:15:09 INFO [NetworkingService] Creating NetworkingService...
20:15:09 INFO [MainService] Creating MainService...
20:15:09 INFO [ServerService] Creating ServerService...
20:15:09 INFO [vHackOSBot-Config] Creating ConfigFile...
20:15:09 INFO [vHackOSBot-ConfigAdv] Creating ConfigFile...
20:15:09 WARN [io.sentry.DefaultSentryClientFactory] No 'stacktrace.app.packages' was configured, this option is highly recommended as it affects stacktrace grouping and display on Sentry. See documentation: https://docs.sentry.io/clients/java/config/#in-application-stack-frames
20:15:09 WARN [io.sentry.DefaultSentryClientFactory] No 'stacktrace.app.packages' was configured, this option is highly recommended as it affects stacktrace grouping and display on Sentry. See documentation: https://docs.sentry.io/clients/java/config/#in-application-stack-frames
20:15:10 INFO [vHackOSBot-ConfigAdv] Loading advanced config...
20:15:10 INFO [vHackOSBot-ConfigAdv] Loaded advanced config in 223ms.
20:15:10 INFO [vHackOSBot-ConfigAdv] Saving advanced config...
20:15:10 INFO [vHackOSBot-ConfigAdv] Saved advanced config in 29ms.
20:15:10 INFO [vHackOSBot-Config] Loading config...
20:15:10 INFO [vHackOSBot-Config] Loaded config in 47ms.
20:15:10 INFO [vHackOSBot-Config] Saving config...
20:15:10 INFO [vHackOSBot-Config] Saved config in 2ms.
Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
        at net.olympiccode.vhackos.api.utils.Encryption.md5Hash(Encryption.java:15)
        at net.olympiccode.vhackos.api.requests.Route.compile(Route.java:59)
        at net.olympiccode.vhackos.api.entities.impl.vHackOSAPIImpl.verifyDetails(vHackOSAPIImpl.java:108)
        at net.olympiccode.vhackos.api.entities.impl.vHackOSAPIImpl.login(vHackOSAPIImpl.java:83)
        at net.olympiccode.vhackos.api.vHackOSAPIBuilder.buildAsync(vHackOSAPIBuilder.java:92)
        at net.olympiccode.vhackos.api.vHackOSAPIBuilder.buildBlocking(vHackOSAPIBuilder.java:104)
        at net.olympiccode.vhackos.bot.core.vHackOSBot.run(vHackOSBot.java:107)
        at net.olympiccode.vhackos.bot.core.vHackOSBot.main(vHackOSBot.java:51)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
        at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
        ... 8 more
20:15:10 INFO [vHackOSBot] Shutting down...
20:15:10 INFO [vHackOSBot-Config] Saving config...
20:15:10 INFO [vHackOSBot-Config] Saved config in 2ms.
20:15:10 INFO [vHackOSBot-ConfigAdv] Saving advanced config...
20:15:10 INFO [vHackOSBot-ConfigAdv] Saved advanced config in 1ms.

【问题讨论】:

  • 看起来javax/xml/bind/DatatypeConverter 的实现不在您的类路径中

标签: java


【解决方案1】:

在 JDK 9 中,不推荐使用 java.xml.bind 并将其从标准类路径中删除。 它仍然存在,因此您可以尝试解决方法并使用 --add-modules 将模块添加到您的类路径中。

但对我来说,最简单的解决方案是添加依赖项(gradle/maven):

分级:

compile 'javax.xml.bind:jaxb-api:2.3.0'

行家:

<dependency>
  <groupId>javax.xml.bind</groupId>
  <artifactId>jaxb-api</artifactId>
  <version>2.3.0</version>
</dependency>

弃用摘要链接:https://docs.oracle.com/javase/9/docs/api/java.xml.bind-summary.html

【讨论】:

    【解决方案2】:

    我找到了为什么它不起作用。我需要降级到 java jde 和 jdk 8

    【讨论】:

    • 虽然这是一个可能的解决方案,但它会将您绑定到该 java 版本。我强烈建议遵循@sagat 方法。
    猜你喜欢
    • 2017-08-15
    • 1970-01-01
    • 2023-01-23
    • 2022-11-04
    • 1970-01-01
    • 1970-01-01
    • 2021-04-01
    • 2018-06-06
    • 1970-01-01
    相关资源
    最近更新 更多