После установки JDK9 я получаю это исключение при запуске моих проектов Scala. Обновление Scala до 2.12.2 также не помогло решить мою проблему.
Java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
Ответ 1
Модуль java.xml.bind
не разрешается по умолчанию при запуске кода на пути к модулю. Это означает, что если вы зависите от JAXB, вам нужно запустить с помощью --add-modules java.xml.bind
или же развернуть JAXB по пути класса (или пути к модулю).
Обновление. Раздел "" Модули, разделенные с помощью Java EE Not Resolved by Default" в Руководстве по миграции JDK 9 содержит дополнительную информацию по этой теме.
Ответ 2
Чтобы добавить к предыдущему ответу, я хотел бы сослаться на следующий ответ: fooobar.com/info/67174/.... Я думаю, что в нем подробно описывается, какой именно способ предоставить библиотеки, такие как jaxb
.
В частности, для Scala, я добавляю это так в мои libraryDependencies
:
libraryDependencies += Seq("javax.xml.bind" % "jaxb-api" % "2.3.0")