JAXB 应用程序的 xjc 命令

使用 Java™ XML 绑定体系结构 (JAXB) 工具,根据 XML 模式及通过 xjc 模式编译器工具来生成 Java 类。

JAXB 是一种 XML 至 Java 绑定技术,它允许在模式与 Java 对象之间进行变换,以及在 XML 实例文档和 Java 对象实例之间进行变换。JAXB 技术包含运行时 API 并随附可简化对 XML 文档的访问权的工具。使用 JAXB API 和工具在 XML 模式和 Java 类之间建立映射。XML 模式定义 XML 文档的数据元素和结构。JAXB 技术提供运行时环境,使您能够在 XML 文档与 Java 对象之间进行转换。不必理解 XML 数据结构即可访问存储在 XML 文档中的数据。

通过使用 JAXB 模式编译器 xjc 命令行工具根据 XML 模式文件生成完全注释的 Java 类。使用 xjc 模式编译器工具从 XML 模式定义 (XSD) 开始创建一组 JavaBeans(映射到在 XML 模式中定义的元素和类型)。在 XML 模式与 Java 类之间存在映射后,通过使用 JAXB 绑定运行时 API,可以在 XML 实例文档与 Java 对象之间进行相互转换。生成的带注释 Java 类包含 JAXB 运行时解析 XML 以进行编组和取消编组所需的所有必需信息。可以在“针对 XML Web Service 的 Java API”(JAX-WS) 应用程序或非 JAX-WS Java 应用程序中使用生成的 JAXB 类来处理 XML 数据。

支持的配置 支持的配置: z/OS® 平台不支持 wsimportwsgenschemagenxjc 命令行工具。随在 z/OS 平台上运行的 WebSphere® Application Server 一起提供的组装工具提供了此功能。请针对 JAX-WS 应用程序查看这些命令行工具,以更多地了解这些工具。sptcfg
最佳实践 最佳实践: WebSphere Application Server 提供 Java API for XML-Based Web Services (JAX-WS) 和 Java XML 绑定体系结构 (JAXB) 工具。wsimportwsgenschemagenxjc 命令行工具位于 WebSphere Application Server(传统)app_server_root\bin\ 目录中。xjcschemagen 命令位于 Liberty 概要文件中的 app_server_root\jaxb\bin\ 目录中。在某些情况下,由 WebSphere Application Server 提供的工具以及 JDK 两者所生成的工件支持相同级别的规范。总之,JDK 工具生成的工件可在其他顺应的运行时环境之间移植。然则,最好是使用本产品附带提供的工具来在 WebSphere Application Server 环境内实现无缝集成并利用可能仅在 WebSphere Application Server 中受支持的功能部件。要利用 JAX-WS 和 JAXB V2.2 工具,请使用应用程序服务器附带提供的工具,这些工具位于 app_server_root\bin\ 目录。bprac

除了从命令行使用 xjc 工具外,还可以从 Ant 构建环境中调用此 JAXB 工具。从 Ant 构建环境中使用 com.sun.tools.xjc.XJCTask Ant 任务来调用 xjc 模式编译器工具。为了正常运行,此 Ant 任务需要您使用 ws_ant 脚本来调用 Ant。

避免故障 避免故障: 如果要使用 xjc Ant 任务,那么您必须使用 destdir 参数而不是 target 选项来指定目标目录。使用 xjc Ant 任务时,指定 target 选项将导致发生错误。gotcha

语法

命令行语法为:

[Windows]
app_server_root\bin\xjc.bat [options] <schema_file/URL/directory_or_jar> ...[-b<binding_information>] ... 
[AIX][HP-UX][Linux][Solaris]
app_server_root/bin/xjc.sh [options] <schema_file/URL/directory_or_jar> ...[-b<binding_information>] ... 
[IBM i]
app_server_root/bin/xjc [options] <schema_file/URL/directory_or_jar> ...[-b<binding_information>] ... 

如果指定目录,那么会编译该目录中的所有模式文件。

参数

目录的 schema file/URL JAR 文件名或位置是唯一的必需参数。对于 xjc 命令,以下参数是可选参数:

-b <file_name or directory>
指定外部 JAX-WS 或 JAXB 绑定文件。可以通过使用 -b 选项来指定多个 JAX-WS 和 JAXB 绑定文件;但是每个文件都必须通过它自己的 -b 选项来指定。如果指定目录,那么会搜索 **/*.xjb
-catalog <file_name>
指定目录文件以解析外部实体引用。它支持 TR9401、XCatalog 和 OASIS XML 目录格式。
-classpath <path>
指定类文件的位置。
-d <directory>
指定用于放置生成的输出文件的位置。
-dtd
指定此选项以将输入处理为 XML 文档类型定义 (DTD)。此选项不受支持且为试验选项。
-extension
指定是否对并非由 JAXB 规范指定的功能启用定制扩展。使用扩展可能会产生不可移植的应用程序或者不与其他实现互操作的应用程序。
-help
显示帮助菜单。
-httpproxy <[user[:password]@]<proxyhost>:<proxyport>>
指定 HTTP 或 HTTPS 代理。
-httpproxyfile <file_name>
此参数类似于 -httpproxy 参数,但接受文件中的参数以保护密码。
-no-header
指定此选项以禁止生成带有时间戳记的文件头。
-npa
指定此选项以禁止生成 **/package-info.java 包级别注释。
-nv
指定此选项以不对输入模式执行严格验证。
-p <package_name>
指定目标包。
-quiet
指定此选项以禁止 xjc 工具的输出。
-relaxng
指定此选项以将输入处理为 XML 下一代的正则式语言 (RELAX NG)。此选项不受支持且为试验选项。
-readOnly
指定生成的文件处于只读方式。
-relaxng-compact
指定此选项以将输入处理为 XML 下一代的正则式语言 (RELAX NG) 压缩语法。此选项不受支持且为试验选项。
-target <version>
指定此选项以生成输出以符合 JAX-WS 规范的指定级别。指定 2.02.1 可以让工具分别生成符合 JAXB 2.0 或 JAX-WS 2.1 规范的代码。指定 2.1 可以让工具生成符合 JAXB 2.1 规范的代码。缺省目标版本为 2.2,用于生成符合 JAXB 2.2 规范的代码。
target 选项对于 Liberty 概要文件为必需。
-verbose
指定此选项以输出一些消息来说明编译器正在执行哪些操作。
-version
打印版本信息。如果指定此选项,那么只输出版本信息,而不执行典型的命令处理。
-wsdl
指定此选项以将输入处理为 Web Service 描述语言 (WSDL) 文件,并在 WSDL 中编译模式。此选项不受支持且为试验选项。
-xmlschema
指定此选项以将输入处理为万维网联盟 (W3C) XML 模式。此值是缺省值。

指示主题类型的图标 参考主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rwbs_xjc
文件名:rwbs_xjc.html