JAVAプログラムの実行 (JAVA)
実行可能場所: すべての環境 (*ALL) スレッド・セーフ: いいえ |
パラメーター 例 エラー・メッセージ |
JAVAプログラム実行(JAVA)コマンドは,指定したJAVAクラスと関連したJAVAプログラムを実行します。JAVAプログラムが存在しない場合には,これが作成され,クラス・ファイルと関連付けられます。
このコマンドは,統合ファイル・システムAPIをサポートするファイル・システム中のファイルで操作することができます。
上 |
パラメーター
キーワード | 記述 | 選択項目 | ノーツ |
---|---|---|---|
CLASS | クラス・ファイルまたはJARファイル | パス名, *VERSION | 必須, 定位置 1 |
PARM | パラメーター | 単一値: *NONE その他の値 (最大 200 回の繰り返し): 文字値 |
オプショナル, 定位置 2 |
CLASSPATH | クラスパス | パス名, *ENVVAR | オプショナル |
CHKPATH | クラスパス機密保護検査レベル | *WARN, *SECURE, *IGNORE | オプショナル |
OPTIMIZE | 最適化 | *JIT, *INTERPRET, 10, 20, 30, 40 | オプショナル |
INTERPRET | 解釈 | *OPTIMIZE, *YES, *NO, *JIT | オプショナル |
PROP | プロパティー | 単一値: *NONE その他の値 (最大 200 回の繰り返し): 要素リスト |
オプショナル |
要素 1: プロパティー名 | パス名 | ||
要素 2: プロパティー値 | 文字値, X'' | ||
GCHINL | ガーベッジ・コレクション初期サイズ | 256-240000000, *DFT | オプショナル |
GCHMAX | ガーベッジ・コレクション最大サイズ | 256-240000000, *DFT, *NOMAX | オプショナル |
GCFRQ | ガーベッジ・コレクション頻度 | 0-100, 50 | オプショナル |
GCPTY | ガーベッジ・コレクション優先順位 | 20, 10, 30 | オプショナル |
OPTION | オプション | 値 (最大 4 回の繰り返し): *NONE, *VERBOSE, *DEBUG, *VERBOSEGC, *NOCLASSGC | オプショナル |
JOB | ジョブ名 | 名前, QJVACMDSRV, *GEN | オプショナル |
AGTPGM | エージェント・プログラム | 単一値: *NONE その他の値: 修飾オブジェクト名 |
オプショナル |
修飾子 1: エージェント・プログラム | 名前 | ||
修飾子 2: ライブラリー | 名前, *LIBL, *CURLIB | ||
AGTOPTIONS | エージェント・オプション | 文字値, *NONE | オプショナル |
OUTPUT | 出力 | 単一値: *PRINT, *NONE その他の値: 要素リスト |
オプショナル |
要素 1: 宛先 | * | ||
要素 2: プログラム終了処置 | *PAUSE, *CONTINUE |
上 |
クラス・ファイルまたはJARファイル (CLASS)
実行するクラス名またはJARファイルを指定します。このクラス名は,1つまたは複数のパッケージ名で修飾される場合があります。各パッケージ名の後ろには,ピリオドがなければなりません。たとえば,CLASS('PKG1.PKG2.MYCLASS')は,2つのパッケージ名で修飾されたクラスとして識別されます。
JARファイル名は,JDK 1.2またはそれ以上を実行している時にのみ指定することができます。始動クラスは,MANIFESTのヘッダー中のメイン・クラスによって示されていなければなりません。
- クラス名
- 実行するクラスの名前を指定します。
- JAR名
- メイン・クラスがMANIFESTで指定されたJARファイルの名前を指定します。
- *VERSION
- Java Development Kit(JDK)およびJAVA仮想マシン(JVM)の構築バージョンが表示されます。実行されるJAVAプログラムはありません。
上 |
パラメーター (PARM)
JAVAプログラムに渡される1つまたは複数のパラメーター値を指定します。最大200パラメーター値まで渡すことができます。
- *NONE
- JAVAプログラムに対する入力パラメーターはありません。
- パラメーター値
- JAVAプログラムに渡されるパラメーター値を指定します。
上 |
クラスパス (CLASSPATH)
クラスの位置指定に使用するパスを指定します。ディレクトリーは,コロンで区切られます。
- *ENVVAR
- クラスパスは,環境変数CLASSPATHによって決定されます。
- クラスパス
- クラスの位置指定に使用するパス。クラスパスの例としては,'/DIRECTORY1/DIRECTORY2:/QIBM/PRODDATA/JAVA400'です。
上 |
クラスパス機密保護検査レベル (CHKPATH)
共通書き込み権限をもつCLASSPATH中のディレクトリーに指定された警告のレベルを指定します。共通書き込み権限をもつCLASSPATH中のディレクトリーは,実行しようとするものと同じ名前を持つクラス・ファイルを含む可能性があるので,機密漏れとなります。これらのクラス・ファイルのうち,最初に見つかったファイルが実行されます。
- *WARN
- 警告メッセージは共通書き込み権限をもつCLASSPATH中のディレクトリーごとに送信されます。
- *SECURE
- 警告メッセージは共通書き込み権限をもつCLASSPATH中のディレクトリーごとに送信されます。1つまたは複数の警告メッセージが送信された場合には,エスケープ・メッセージが送信され,JAVAプログラムは実行されません。
- *IGNORE
- CLASSPATH中のディレクトリーが共通書き込み権限をもつという事実を無視します。警告メッセージは送信されません。
上 |
上 |
上 |
プロパティー (PROP)
JAVAプロパティーに割り当てられる値のリストを指定します。値を割り当てられるのは,200個のプロパティーまでです。
単一値
- *NONE
- 指定されるプロパティーはありません。
要素1: プロパティー名
- プロパティー名
- 変更するプロパティーの名前を指定します。
要素2: プロパティー値
- プロパティー値
- そのプロパティーに割り当てる値を指定します。
上 |
ガーベッジ・コレクション初期サイズ (GCHINL)
ガーベッジ・コレクション・ヒープの初期サイズ(Kバイト)を指定します。これは,ガーベッジ・コレクションが小さなプログラムで開始されないようにするために使用します。
- *DFT
- プロパティーによって指定変更しないかぎり,省略時の初期サイズは16384キロバイトです。
- 256-240000000
- ガーベッジ・コレクション・ヒープの初期サイズ(バイト)を指定します。初期ヒープ・サイズを16384 Kバイト(省略時の値)以上に設定することをお勧めします。
上 |
ガーベッジ・コレクション最大サイズ (GCHMAX)
ガーベッジ・コレクション・ヒープが増加できる最大サイズ(Kバイト)を指定します。これは,使用可能なすべての記憶域を消費するランナウェイ・プログラムを回避するために使用します。通常,ガーベッジ・コレクションは別のスレッドと並列した非同期スレッドとして実行されます。最大サイズに達した場合には,他のすべてのスレッドは停止しますが,ガーベッジ・コレクションは実行されます。これによって,逆にパフォーマンスに影響する場合があります。
- *DFT
- パラメーターの省略時値を使用します。省略時の最大値は,プロパティーを指定しないかぎり,システムによって決められます。ヒープは,すべてのシステム資源が使い尽くされるまで増加します。同期ガーベッジ・コレクションが開始され,もう使用されない資源を再利用します。
- *NOMAX
- 最大サイズは,ユーザーによって指定されません。最大はシステムによって決定されます。ヒープは,すべてのシステム資源が使い尽くされるまで増加します。同期ガーベッジ・コレクションが開始され,もう使用されない資源を再利用します。
- 256-240000000
- ガーベッジ・コレクション・ヒープを大きくできるサイズをキロバイト数で指定します。
上 |
ガーベッジ・コレクション頻度 (GCFRQ)
このパラメーターは,既にサポートされていません。これは単に,バージョン4リリース3モディフィケーション0より前のリリースとの互換性のために存在しています。
上 |
ガーベッジ・コレクション優先順位 (GCPTY)
このパラメーターは,既にサポートされていません。これは単に,バージョン4リリース3モディフィケーション0より前のリリースとの互換性のために存在しています。
上 |
オプション (OPTION)
JAVAクラスを実行している時に使用する特殊オプションを指定します。
- *NONE
- JAVAクラスを実行している時に使用される特殊オプションはありません。
- *VERBOSE
- クラス・ファイルがロードされるごとにメッセージが表示されます。
- *DEBUG
- このJAVAプログラムに対して,システム・デバッガーを使用できるようにします。この値は,JITコンパイラーでは使用できません。すなわち,*DEBUGはINTERPRET(*JIT)と相互に排他的です。また,CLASSキーワードにJARファイルを指定した時には,*DEBUGを使用することはできません。
- *VERBOSEGC
- ガーベッジ・コレクションのスイープごとにメッセージが表示されます。
- *NOCLASSGC
- ガーベッジ・コレクションが実行される時に,未使用クラスが再利用されません。
上 |
ジョブ名 (JOB)
このコマンドの実行時に開始されるバッチ即時(BCI)ジョブと関連づけられる名前を指定します。BCIジョブはJAVAプログラムが実行される場所です。
- QJVACMDSRV
- BCIジョブのジョブ名はQJVACMDSRVになります。
- *GEN
- ジョブ名はクラス名から生成されます。
- 名前
- JAVAプログラムの実行に使用するBCIジョブ用に使用する名前を指定します。
上 |
エージェント・プログラム (AGTPGM)
仮想マシン(VM)エージェントを含むILEサービス・プログラムまたはi5/OS PASEプログラムを指定します。たとえば,VMエージェントはリモート・デバッガーまたはプロファイラーとすることができます。VMは,エージェント・プログラムをロードし,次のように入り口点を探します。
JINT JNICALL JVM_ONLOAD(JAVAVM *JVM, CHAR *OPTIONS, VOID *RESERVED);
VMは,JVM_ONLOAD関数を呼び出し,最初の引き数としてポインターをJAVAVMインスタンスに渡し,AGTOPTIONSパラメーターに指定した文字ストリングを2番目の引き数として渡します。JVM_ONLOADへの3番目の引き数は予約されていて,NULLに設定されます。
単一値
- *NONE
- VMエージェント・プログラムは指定されません。
修飾子1: エージェント・プログラム
- 名前
- VMエージェント・プログラムの名前を指定します。
修飾子2: ライブラリー
- *LIBL
- 最初の一致が見つかるまで,現行スレッド用のライブラリー・リスト中のすべてのライブラリーが検索されます。VMエージェントがi5/OS PASEプログラムの場合には,LIBPATHおよびPASE_LIBPATH環境変数に含まれるディレクトリーがプログラムの検索に使用されます。
- *CURLIB
- スレッドの現行ライブラリーが検索されます。スレッドの現行ライブラリーとして指定されているライブラリーがない場合,QGPLライブラリーが検索されます。
- 名前
- 検索するライブラリーの名前を指定してください。
上 |
エージェント・オプション (AGTOPTIONS)
仮想マシン(VM)エージェント・オプションの文字ストリングを指定します。この文字ストリングへのポインターは,AGTPGMパラメーターに指定されたVMエージェント・プログラムのJVM_ONLOAD関数に2番目の引き数として渡されます。このオプション・ストリングの形式はそのエージェント・プログラムによって決まります。
- *NONE
- オプションは指定されません。NULLのオプション引き数がJVM_ONLOAD関数に渡されることになります。
- 文字値
- 開始時にVMエージェント・プログラムに渡すオプション・ストリングを指定します。
上 |
出力 (OUTPUT)
JAVAプログラムからの出力の送り先を指定しますが,出力をJAVAシェル表示に向ける場合には,JAVA プログラムの終了時に,シェル表示パネルを終了するかどうかを指定します。
単一値
- JAVAプログラムの出力は,QPRINT印刷装置ファイルを介してスプール・ファイルに送られます。
- *NONE
- JAVAプログラムの出力は廃棄されます。
要素1: 宛先
- *
- JAVAプログラムを対話式ジョブから実行した場合には,出力の表示にJAVAシェル表示パネルが使用されます。JAVAプログラムをバッチ・ジョブから実行すると,JAVAプログラムの出力は,QPRINT印刷装置ファイルを介してスプール・ファイルに送られます。
要素2: プログラム終了処置
- *PAUSE
- F3, F12,または実行キーを押すまで,JAVAシェル表示パネルが表示されます。
- *CONTINUE
- JAVAプログラムの終了時にJAVAシェル表示パネルがクローズされます(消えます)。
上 |
例
例1: JAVAプログラムの実行
JAVA CLASS('PROJECTA.MYJAVACLASSNAME')
このコマンドは,クラスMYJAVACLASSNAMEと関連づけられたi5/OS JAVAプログラムを実行します。JAVAプログラムを実行するバッチ即時(BCI)ジョブのジョブ名はQJVACMDSRVになります。
例2: JAVAプログラムのジョブ名の生成
JAVA CLASS('PROJECTA.MYJAVACLASSNAME') JOB(*GEN)
このコマンドは,クラスMYJAVACLASSNAMEと関連づけられたi5/OS JAVAプログラムを実行します。JAVAプログラムを実行するバッチ即時(BCI)ジョブのジョブ名はMYJAVACLASになります。
上 |
エラー・メッセージ
*ESCAPE メッセージ
- JVAB534
- JAVAプログラム"&1"を完了できません。
- JVAB537
- JAVAシェルがジョブで既に活動状態になっています。
- JVAB538
- JAVAシェルの実行中に,エラーが発生しました。
- JVAB539
- システム・デバッガーを開始できません。
- JVAB53A
- JAVAシェルを開始できません。理由コードは&1です。
- JVAB53B
- JAVA処理が取り消されました。
- JVAB53D
- JAVA DEVELOPMENT KITが見つかりませんでした。
- JVAB546
- JAVAをバッチ・モードで実行中に,エラーが検出されました。
上 |