2.2.10 xjc
XML SchemaからJavaへバインディングするコンパイラー
書式
xjc [OPTION]... <schema file/URL/dir/jar> [-b <binding>...] OPTION: [-nv] [-extension] [-d dir] [-p pkg] [-httpproxy proxy] [-httpproxyfile file] [-classpath arg] [-catalog file] [-readOnly] [-npa] [-no-header] [-target 2.0|2.1] [-encoding encoding] [-enableIntrospection] [-disableXmlSecurity] [-contentForWildcard] [-xmlschema] [-verbose] [-quiet] [-help] [-version] [-Xinject-code] [-Xlocator] [-Xsync-methods] [-mark-generated] [-episode file] [-Xpropertyaccessors]
格納先
Application Serverインストールディレクトリー/javaee/glassfish/bin
機能
xjcコマンドは、コンパイル時に使用するバインドオプションの設定を基に、Javaソースファイルとjaxb.propertiesファイルを含んだパッケージの集合を作成します。
パッケージを生成したときに、jaxb.propertiesファイルはコンパイル済みのソースコードとともに保持されていて、クライアントアプリケーションの実行時に利用できる状態である必要があります。
実行権限
スーパーユーザー
ファイル
-
xjcコマンドの入力として渡されるxsdスキーマ定義ファイルが必要です。xjcコマンドはJavaコンテンツクラスを作成します。
-
xjcコマンドはJavaソースファイルとjaxb.propertiesファイルを含んだパッケージの集合を作成します。
引数
- -nv
-
スキーマの妥当性検査のレベルを変更します。このオプションを指定すると、厳密性の低い妥当性検査が実施されます。
- -extension
-
JAXB仕様で規定されていない機能のベンダー拡張を許可する場合に指定します。
- -d dir
-
Javaコンテンツクラスを代替出力ディレクトリーに作成します。
このオプションを指定する場合は、代替出力ディレクトリーが事前に作成されている必要があります。XJCスキーマコンパイラーはこのディレクトリーを作成しません。
型:String
指定できる値を次に示します。
-
出力先ディレクトリー名
デフォルト値:なし
-
- -p pkg
-
パッケージを指定します。-pオプションでパッケージを指定した場合、パッケージ名に対するカスタムバインディングや、仕様で規定されているデフォルトのパッケージ名アルゴリズムよりも優先されます。
型:String
指定できる値を次に示します。
-
パッケージ名
デフォルト値:なし
-
- -httpproxy proxy
-
HTTP/HTTPSプロキシーを指定します。
書式は次のとおりです:
[user[:password]@]proxyHost[:proxyPort]
型:Integer
指定できる値を次に示します。
-
HTTP/HTTPSプロキシー
デフォルト値:なし
-
- -httpproxyfile file
-
HTTP/HTTPSプロキシーのファイルパスを指定します。ファイル内の<proxy>パラメーターを使用して、パスワードを保護できます。
書式は次のとおりです:
[user[:password]@]proxyHost[:proxyPort]
型:String
指定できる値を次に示します。
-
HTTP/HTTPSプロキシーのファイルパス
デフォルト値:なし
-
- -classpath arg
-
<jxb:javaType>や<xjc:superClass>のカスタマイズで使用されるクライアントアプリケーションのクラスファイルの場所を指定します。
型:String
指定できる値を次に示します。
-
クラスパス
デフォルト値:なし
-
- -catalog file
-
外部エンティティー参照を解決するカタログファイルのパスを指定します。TR9401、XCatalogおよびOASIS XML Catalogの形式をサポートします。
型:String
指定できる値を次に示します。
-
カタログファイルのパス
デフォルト値:なし
-
- -readOnly
-
このオプションを指定すると、XJCスキーマコンパイラーは生成されたJavaソースを強制的に読み取り専用とします。
- -npa
-
**/package-info.javaにパッケージレベルの注釈を作成することを抑止します。
このオプションを指定して生成されたコードでは、生成済みのほかのクラスにこれらの注釈が取り込まれます。
- -no-header
-
注釈やタイムスタンプを含むファイルヘッダーコメントの生成を抑止します。
このオプションを指定すると、生成されたコードの差分が取りやすくなります。
- -target 2.0|2.1
-
JAXB 2.1またはJAXB 2.2の機能に依存するコードを生成しないようにします。このオプションを指定すると、生成されたコードがJAXB 2.0ランタイム(JavaSE 6など)で実行できるようになります。
型:Integer
指定できる値を次に示します。
-
JAXBのバージョン番号
デフォルト値:なし
-
- -encoding encoding
-
作成したソースファイルの文字エンコードを指定します。
型:String
指定できる値を次に示します。
-
JDKがサポートする文字エンコード
デフォルト値:OSのデフォルトの文字エンコード
-
- -enableIntrospection
-
Boolean getters/settersを正しく生成して、Introspection APIを有効にします。
- -disableXmlSecurity
-
XMLドキュメントの解析時にXMLのセキュリティー機能を無効にします。
- -contentForWildcard
-
複数のxs:any派生要素を持つタイプのコンテンツプロパティーを生成します。
- -xmlschema
-
入力スキーマをW3C XML Schemaとして処理します。このオプションを指定しない場合も、入力スキーマはW3C XML Schemaとして処理されます。
- -verbose
-
エラー発生時に詳細な情報メッセージを出力したり、スタックトレースを表示したりします。
- -quiet
-
進捗情報や警告などのコンパイラーによる出力を抑止します。
- -help
-
コマンドラインオプションの概要を表示します。
- -version
-
コンパイラーのバージョン情報を表示します。
- -Xinject-code
-
指定したJavaコードのフラグメントを生成したコードに埋め込みます。
- -Xlocator
-
このオプションを指定すると、生成したJavaコードに、基のXMLのSAXのLocator情報を出力します。
- -Xsync-methods
-
このオプションを指定すると、生成したメソッドのシグニチャーすべてにsynchronizedキーワードが含まれます。
- -mark-generated
-
このオプションを指定すると、生成したコードに注釈(@Generated [http://java.sun.com/javaee/5/docs/api/jaxb-2-0-overview? javax/annotation/Generated.html])を付与します。
- -episode file
-
コンパイル時にエピソードファイルを生成します。このエピソードファイルに依存するほかのスキーマ定義ファイルのコンパイル後、エピソードファイルをコンパイル時に生成されたクラスに依存させることができます。作成したエピソードファイルはベンダー拡張を含んだJAXBカスタマイズファイルとなります。
型:String
指定できる値を次に示します。
-
生成するエピソードファイル名
デフォルト値:なし
-
- -Xpropertyaccessors
-
生成したクラスの@XmlAccessorTypeに、XmlAccessType.FIELDの代わりにXmlAccessType PROPERTYを付与します。
- schema file/URL/dir
-
コンパイル対象のスキーマ定義ファイルを1つ以上指定します。ディレクトリーを指定した場合、xjcはそのディレクトリーを走査し、検出したスキーマ定義ファイルすべてをコンパイルします。
型:String
指定できる値を次に示します。
-
スキーマ定義ファイルまたはディレクトリーのパス
デフォルト値:なし
-
- -b <binding>
-
処理する外部バインディングファイルを指定します。
バインディングファイルごとに-bオプションを指定します。複数のスキーマのカスタマイズを1つのバインディングファイルに含めたり、複数のバインディングファイルに分割したりできます。コマンドラインに指定するスキーマ定義ファイルとバインディングファイルの順番は任意です。
型:String
指定できる値を次に示します。
-
外部バインディングファイル名
デフォルト値:なし
-
使用例
例1:1つのバインディングファイル(bindings123.xjb)を使用して、schema1.xsd、schema2.xsd、schema3.xsdからJavaクラスを生成する場合
xjc schema1.xsd schema2.xsd schema3.xsd -b bindings123.xjb
例2:複数のバインディングファイル(bindings1.xjb、bindings2.xjb、bindings3.xjb)を使用して、schema1.xsd、schema2.xsd、schema3.xsdからJavaクラスを生成する場合
xjc schema1.xsd schema2.xsd schema3.xsd -b bindings1.xjb -b bindings2.xjb -b bindings3.xjb
戻り値
戻り値 |
説明 |
---|---|
0 |
コマンドの実行に成功しました。 |
1 |
コマンドの実行中にエラーが発生しました。 |