xjc 命令
演示的是最简单的命令,使用了很多默认参数,实际上xjc
支持的参数非常多,列举常用的几个参数及其含义。
参数 | 取值 | 含义 |
---|---|---|
-b | file/dir | 指定其他的binding 文件 或文件夹 |
-d | dir,默认为generated | 生成的文件存放在该文件夹下 |
-p | pkg,默认为generated | 生成的Java文件使用的包名 |
-xmlschema | 默认 | 指定输入为W3C XML Schema |
-relaxng | 指定输入为 RELAX NG | |
-relaxng-compact | 指定输入为 RELAX NG compact | |
dtd | 指定输入为 XML DTD | |
-version | 查看 xjc 的版本 |
- 指定生成的 java 文件的包名:
xjc -p com.traing.bean book.xsd
可以在生成的文件E:/JAXB/com/traing/book/Book.java
中发现指定的包名。package com.traing.bean;
- 指定生成的 java 文件路径:
xjc book.xsd -d e:\JAXB\com
可以发现生成的文件位于E:/JAXB/com/Book.java
,值得注意的是,这里的e:\JAXB\com
必须是一个存在的文件夹,否则不成功,错误提示拒绝写入不存在的目录 "e:\JAXB\com"
。 - 将其他格式的 schema 转化为Java对象:
xjc student.dtd -dtd
可以发现生成的文件E:/JAXB/generated/Student.java
,此外还有其他的一些文件。 - 一次性指定多个需要转换 schema 文件:
xjc student.xsd grade.xsd
不用一个个转换了,可以指定多个schema文件,不过两个 schema 文件不能有重复的属性。