Jaspera で試す
Jaspera は JAL のサンドボックス実行環境です。ソースを編集して実行し,命令ごとのスタックやローカル変数を調べられます。コンパイラと実行用 JVM はブラウザ内で動くため,手元に JDK を用意する必要はありません。初回は実行に必要なファイルを読み込みます。
実行する
初期表示の HelloWorld を開き,右上の実行ボタンを押します。ブレークポイントに達すると停止します。続きを動かすには再開ボタンを押してください。出力は「コンソール」に表示されます。
サンプルを変更しても,ページを再読み込みすると元の内容に戻ります。残したいソースは再読み込みの前にファイルとして保存してください。プロジェクトやフォルダーの保存にはサンプルを含みません。
命令ごとに止める
行番号とバイトコードオフセットの間をクリックすると,ブレークポイントを切り替えられます。停止中はデバッグ用の操作ボタンが表示されます。
| 操作 | 動作 |
|---|---|
| 再開 | 次のブレークポイントなどで停止するまで実行する |
| ステップイン | 呼び出し先の命令も追う |
| ステップオーバー | 呼び出し先の処理を進め,呼び出し元の次の位置で停止する |
| ステップアウト | 現在のメソッドから呼び出し元へ戻るまで進める |
| 停止 | 実行を終了する |
「フレーム」では,停止中の呼び出し階層と,選択したフレームのスタック・ローカル変数を確認できます。「実行後」の欄は,停止時点の情報から予測した,次の命令による変化です。実際に命令を実行した結果ではありません。メソッドの戻り値など,まだ分からない値は型や未確定の値として表示します。
意味と流れを調べる
「命令」パネルで命令名を検索すると,説明と使用例を読めます。「グラフ」ではメソッド内の命令のつながりを確認できます。構文の規則は 言語ガイド,スタックの読み方は スタックとローカル変数 を参照してください。
詳しい操作は Jaspera の ヘルプ → 機能ガイド からも読めます。ヘルプ → LangJAL について には,このドキュメントへのリンクがあります。
ファイルを読み込む
ファイル → 開く またはドラッグ&ドロップでソースを読み込めます。.class は JAL として表示できます。JAR を開くと中身がツリーに並び,クラスを編集して JARをダウンロード で書き出せます。未編集のクラスやリソースの内容は保持されます。
JAR の変更は,プロジェクトの保存とは別にダウンロードしてください。コンパイルに失敗したクラスがある場合は書き出しません。署名付き JAR を編集した場合は,無効になった署名を取り除いて書き出します。
Jaspera はブラウザ内で試すための環境です。デスクトップの JVM と同じファイルシステムや OS の機能を使えるとは限りません。実際の配布先で動くことを確認するには,生成したクラスを対象の JVM でも実行してください。