Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何获得xjc?_Java_Xml_Xjc - Fatal编程技术网

Java 如何获得xjc?

Java 如何获得xjc?,java,xml,xjc,Java,Xml,Xjc,因此,我一直在为一个项目研究与xml文件的接口,我想做的一件事是从.dtd文件生成java类。经过一番搜索,我发现xjc应该可以做我想做的事情,但我一辈子都找不到从哪里获得程序本身 我觉得答案就在眼前,但我的google fu现在真的让我失望了…我是在安装java时得到的。它现在可能在您的系统上。查看java、javac等所在的目录。它是JDK的一部分。检查您的javabin文件夹 xjc是JAXB中的一个工具,它位于javase、javaee和javaweb服务中,我相信还有更多。请在此阅读注

因此,我一直在为一个项目研究与xml文件的接口,我想做的一件事是从.dtd文件生成java类。经过一番搜索,我发现xjc应该可以做我想做的事情,但我一辈子都找不到从哪里获得程序本身


我觉得答案就在眼前,但我的google fu现在真的让我失望了…

我是在安装java时得到的。它现在可能在您的系统上。查看java、javac等所在的目录。

它是JDK的一部分。检查您的javabin文件夹

xjc是JAXB中的一个工具,它位于javase、javaee和javaweb服务中,我相信还有更多。请在此阅读

注意,自Java11以来,JAXB已从JDK中删除。它必须单独安装。ZIP文件中有一个
bin
目录,我们可以在其中找到
xjc
schemagen
工具

下载链接:

我在安装手动下载的
xjc
时遇到了一些问题,正如其中一个答案中所建议的,我成功地使用了
sudo-apt-get-install-jaxb
,正如我的Linux终端所建议的:)

如果您使用的是ubuntu,并且java版本低于9,那么这可能会有所帮助

$ sudo update-alternatives --install /usr/bin/xjc xjc /your_java_home_path/bin/xjc 100

哇!其实就这么简单。我有两个驱动器,其中一个驱动器上有一些程序文件,另一个驱动器上有一些程序文件。我在E:drive上搜索了整个java文件夹,这是我大部分安装的地方,但我完全忘记了C:drive。另外,作为旁注,它看起来只是在java jdk文件夹中,所以您需要完整的jdk来让它工作(努力使这个问题至少对其他人稍微有用)。它不在java/jdk发行版中,从9+@Bogdan开始。对于某些问题,我认为答案应该被弃用。我想在我写这个答案的时候,我在这个主题上非常胜任,但它已经远离了我的雷达,我甚至不再理解这个问题。一般来说,对于5年以上的技术问题,大多数答案都应该被认为是错误的。请注意:
xjc.bat
(版本2.3.1)包含无效设置,无法正确检测Java(使用path提供的
Java
,而不是
Java\u HOME
path变量中指定的设置),不适用于Java 9或更高版本。因此,首先安装Java1.8,然后修改
jaxb ri\bin\xjc.bat
并将
/lib/
替换为
/mod/
,替换
%jaxb\u HOME%/mod/javax.activation.jar;%JAXB_HOME%/lib/relaxngDatatype.jar
with
%JAXB_HOME%/mod/javax.activation api.jar;%JAXB_HOME%/mod/relaxng datatype.jar
,运行
设置JAVA_HOME=
,然后从
JAXB ri
文件夹中运行
bin\xjc.bat
。A下载了旧的JDK,并从xcj.exe所在的bin文件夹中运行了命令。您还可以选择添加jdk8(在JDK 11或更新的引用下面)它在jdk中不再受支持,在jdk 11中不再受支持