安装JDK9后,我在运行Scala项目时得到了这个异常。将Scala升级到2.12.2也没有解决我的问题。
为了补充前面的答案,我想参考以下答案:https://stackoverflow.com/a/43574427/3751268.我认为它详细介绍了提供像jaxb
这样的库所需的方式。
特别是对于Scala,我像这样将其添加到我的库依赖项中
:
libraryDependencies += Seq("javax.xml.bind" % "jaxb-api" % "2.3.0")
在模块路径上运行代码时,默认情况下不会解析java.xml.bind
模块。这意味着,如果您依赖于JAXB,那么您需要使用--add模块java.xml.bind
运行,或者在类路径(或模块路径)上部署JAXB。
更新:JDK9迁移指南的“与JavaEE共享的模块默认情况下未解析”部分提供了有关此主题的更多信息。
可以在maven中添加依赖项
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
问题内容: 安装android sdk工具时,会发出以下错误: java.lang.NoClassDefFoundError:javax / xml / bind / annotation / XmlSchema 为什么会发生这种情况,如何解决? 调试输出: 问题答案: 今天早上,我遇到了类似的问题(试图使用Unity3D为Android构建)。我最终卸载了JDK9并安装了Java SE Deve
这里是Hibernate代码。 下面是servlet。 下面是我运行应用程序时的结果。
问题内容: 我编写了一个小的hibernate应用程序,并获得以下stacktrace: 我不明白这个错误的原因。 码: 我的pom.xml: 我已经阅读了相关主题,但是我真的不知道如何解决它-我不想推出Hibernate 4.0版本。 如何解决? 问题答案: Hibernate Validator 5x与validation-api 1.0.x不兼容 JPA 2.0:在JPA2.0中使用java
我有一些使用JAXB API类的代码,这些代码在Java 6/7/8中作为JDK的一部分提供。当我用Java 9运行相同的代码时,在运行时我得到错误,表明找不到JAXB类。 JAXB类从Java 6开始就作为JDK的一部分提供了,那么为什么Java 9再也找不到这些类了呢?
问题内容: 我按照此链接中的指南安装JSTL,但是在尝试启动JSP页面时遇到以下错误: java.lang.NoClassDefFoundError:javax / servlet / jsp / tagext / TagLibraryValidator taglib声明为: 我在Tomcat Web应用程序下安装了JSTL 1.1,并试图在我的项目中执行相同的操作,但是没有用。我也尝试了JSTL
问题内容: 我在项目中将jdk更改为9版本,然后发生错误: 我尝试通过在pom.com上添加以下内容来解决此问题,但对我而言不起作用: 还有其他解决方法吗? 问题答案: 将包含所需类的工件添加到类路径。 似乎(未经测试)您需要的是javax.annotated API。有关详细信息,请参见https://mvnrepository.com/artifact/javax.annotation/jav