2012-03-26 160 views
7

我想在eclipse中使用Jaxb类生成器从我的模式生成jaxb类。 我收到以下错误:从模式生成jaxb类

“此项目的类路径似乎没有包含必要的库来继续类生成 请确保JAXB实现在类路径中可用。

我该如何解决这个问题?

+0

您使用的是哪个Java版本?你是如何生成这些类的(即使用ant的XJC任务,在控制台等)? – 2012-03-26 14:19:38

+0

我想用Eclipse的JAXB类生成 – 2012-03-26 14:24:40

+2

哪个版本的Java? Jaxb未随1.6版之前的版本发货。 – YMomb 2012-03-26 14:26:24

回答

6

确保在项目中包含jaxb-impl.jar库。你可以从这里下载一个例如: http://repo1.maven.org/maven2/com/sun/xml/bind/jaxb-impl/2.2.4/jaxb-impl-2.2.4.jar

如果你使用Maven的,您可以包括此作为依赖,否则下载文件并将其添加为您的项目库。

如果您需要不同版本的库,请在上面添加的链接中向上移动一个目录,您也可以在其中找到其他版本。

如果您想自动化类生成,因为您要定期更改模式,您应该自动化该过程,例如通过Maven。

1

将tools.jar放入项目的类路径中(生成的代码将驻留在该路径中)。

我在这里找到了一个解释https://bugs.eclipse.org/bugs/show_bug.cgi?id=345617 它不起作用,因为Eclipse只将JRE库放入项目的类路径中。由于xjc代码位于tools.jar中,因此您需要提供此额外步骤。

10

经过这里的大量研究是我已经做了什么来解决这个问题。 Windows>首选项> Java> InstalledJRE ...确保将您的jre指向jdk目录。我指向JRE,一旦我将它改为JDK,它就开始工作。 希望这会帮助你们。

+1

这是因为类生成器使用XJC,它在JDK中提供,但不在JRE中。 – DLight 2016-12-27 22:43:44

2

Windows>首选项> Java> InstalledJREs>执行环境。选择一个环境JDK 1.8,然后尝试创建JAXB类。

点击下面的图片链接了解详情。

Select the execution Environment