1.4.2 説明
idl2javaはJavaベースのプリプロセサで,IDLソースファイルをコンパイルして,IDL宣言に対するJavaマッピングを含むディレクトリ構造体を生成します。一般的に,一つのIDLファイルが複数のJavaファイルにマッピングされます。それは,Javaが一つのファイルに対して,一つのパブリックインタフェース,またはクラスだけを許可しているためです。IDLファイル名には,拡張子.idlを付けてください。
java2idlを実行する際にシステムプロパティfile.encodingを指定しないでください。システムプロパティfile.encodingを指定して文字エンコーディングを変更した場合の動作は保証しません。
生成したスタブ・スケルトンをコンパイルする際には,vbjcコマンド,またはjavacコマンドの引数に"-source 1.4"を指定してください。"-source 1.4"を指定しないでコンパイルすると,JDK5.0からのコンパイル時の型チェックの強化によって,次の警告が表示されます。
「注: 入力ファイルの操作のうち、未チェックまたは安全ではないものがあります。 注: 詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてください。」
idl2javaコマンドの引数に日本語や2バイトコード文字を含むパスを指定しないでください。指定した場合はエラーになります。
- キーワード
-
キーワードは,次のオプションと処理対象のIDL入力ファイルの両方を含みます。
- オプション
-
-
-D, -define foo[=bar]
fooに指定したプリプロセサマクロを定義します。barで値を指定することもできます。
-
-I, -include <dir>
インクルードファイルのディレクトリを絶対パスまたは相対パスで指定します。インクルードファイルを検索するときに指定します。
-
-P, -no_line_directives
行番号情報の生成を抑止します。デフォルトはoffです。
-
-H, -list_includes
インクルードファイルのパスを標準出力に出力します。
-
-C, -retain_comments
Javaコードが生成されるときに,IDLファイルのコメントを保持します。コメントを保持しない場合,コメントはJavaコードで表示されません。デフォルトはoffです。
-
-compilerflags
設定できるフラグを指定します。
-
-compiler
コンパイラオプションを指定します。
-
-U, -undefine foo
fooに指定したプリプロセサマクロの定義を解除します。
-
-[no_]idl_strict
IDLソースに対して厳密にOMG標準規格を適用することを指定します。デフォルトはoffです。
-
-[no_]warn_unrecognized_pragmas
#pragmaが認識されない場合に警告を表示します。デフォルトはonです。
-
-[no_]back_compat_mapping
VisiBroker 3.x互換のマッピングを使用することを指定します。
-
-[no_]comments
コード中にコメントを生成するのを抑止します。デフォルトはonです。
-
-[no_]examples
_exampleクラスの生成を抑止します。デフォルトはoffです。
-
-gen_included_files
インクルードファイルのコードを生成します。デフォルトはoffです。
-
-list_files
コード生成時に書き込まれたファイルの一覧を表示します。デフォルトはoffです。
-
-[no_]obj_wrapper
オブジェクトラッパーのサポートを生成します。デフォルトはoffです。
-
-root_dir <path>
生成したファイルを格納するディレクトリを指定します。
-
-[no_]servant
サーバント(サーバ側)コードを生成します。デフォルトはonです。
-
-tie
_tieクラスを生成します。デフォルトはonです。
-
-[no_]warn_missing_define
あらかじめ宣言されたファイル名を定義しなかった場合に警告します。デフォルトはonです。
-
-[no_]bind
生成したHelperクラスにbind( )メソッドを生成するのを抑止します。デフォルトはoffです。
-
-[no_]compile
onに設定すると,Javaファイルを自動的にコンパイルします。デフォルトはoffです。
-
-dynamic_marshal
マーシャリングにDSIモデルまたはDIIモデルを使用することを指定します。デフォルトはoffです。
-
-idl2package <IDL name> <pkg>
指定したIDLコンテナ型のデフォルトパッケージをオーバーライドします。
-
-[no_]invoke_handler
EJBの呼び出しハンドラクラスを生成します。デフォルトはoffです。
-
-[no_]narrow_compliance
ナロウイングに従ったコードを生成します。デフォルトはonです。このオプションをoffに設定すると,下位互換のコードを生成します。
-
-[no_]Object_methods
java.lang固有のメソッドをオーバーライドします。デフォルトはonです。
-
-package <pkg>
生成したコードのルートパッケージを指定します。
-
-stream_marshal
マーシャリングにストリームモデルを使用することを指定します。デフォルトはonです。
-
-strict
OMGの規格に厳密に従ってコード生成することを指定します。デフォルトはoffです。
-
-version
Borland Enterprise Server VisiBrokerのバージョン番号を表示します。
-
-map_keyword <kwd> <replacement>
使用を避けるキーワードとそれに置き換わる文字列を指定します。
-
-[no_]copy_local_values
CORBAメソッドに同じプロセス内で呼び出しがあった場合に,値をコピーします。デフォルトはoffです。
-
-[no_]preprocess
入力ファイルをパーシングする前にプリプロセシングします。デフォルトはonです。
-
-[no_]preprocess_only
プリプロセシングしたあとで,入力ファイルをパーシングしないようにします。デフォルトはoffです。
-
-[no_]warn_all
すべての警告メッセージが出力されるようにします。デフォルトはoffです。
-
-h, -help, -usage, -?
ヘルプ情報を出力します。
-
このほか,idl2javaのオプションとして,vbjのオプションを使用できます。vbjのオプションについては,「1.7 vbj」を参照してください。