OpenJDK 8 の java コマンドと javac コマンドのヘルプ

## 環境

- macOS Catalina + AdoptOpenJDK 1.8.0_242-b08

## java -help

```
$ java -help
使用方法: java [-options] class [args...]
           (クラスを実行する場合)
   または  java [-options] -jar jarfile [args...]
           (jarファイルを実行する場合)
optionsには次のものがあります。
    -d32	  使用可能な場合は32ビットのデータ・モデルを使用する
    -d64	  使用可能な場合は64ビットのデータ・モデルを使用する
    -server	  "server" VMを選択する場合
                  デフォルトVMはserverです,
                  これはサーバークラスのマシンで実行しているためです。


    -cp <ディレクトリおよびzip/jarファイルのクラス検索パス>
    -classpath <ディレクトリおよびzip/jarファイルのクラス検索パス>
                  クラス・ファイルを検索するディレクトリ、
                  JARアーカイブおよびZIPアーカイブの:で区切られたリストです。
    -D<name>=<value>
                  システム・プロパティを設定する
    -verbose:[class|gc|jni]
                  詳細な出力を行う
    -version      製品バージョンを出力して終了する
    -version:<value>
                  警告: この機能は非推奨であり、詳細のリリースで
                  廃止されます。
                  指定したバージョンを実行に必須にする
    -showversion  製品バージョンを出力して続行する
    -jre-restrict-search | -no-jre-restrict-search
                  警告: この機能は非推奨であり、詳細のリリースで
                  廃止されます。
                  ユーザーのプライベートJREをバージョン検索に含める/除外する
    -? -help      このヘルプ・メッセージを出力する
    -X            非標準オプションに関するヘルプを出力する
    -ea[:<packagename>...|:<classname>]
    -enableassertions[:<packagename>...|:<classname>]
                  指定した粒度でアサーションを有効にする
    -da[:<packagename>...|:<classname>]
    -disableassertions[:<packagename>...|:<classname>]
                  指定した粒度でアサーションを無効にする
    -esa | -enablesystemassertions
                  システム・アサーションを有効にする
    -dsa | -disablesystemassertions
                  システム・アサーションを無効にする
    -agentlib:<libname>[=<options>]
                  ネイティブ・エージェント・ライブラリ<libname>をロードする。例: -agentlib:hprof
                  -agentlib:jdwp=helpと-agentlib:hprof=helpも参照
    -agentpath:<pathname>[=<options>]
                  フルパス名でネイティブ・エージェント・ライブラリをロードする
    -javaagent:<jarpath>[=<options>]
                  Javaプログラミング言語エージェントをロードする。java.lang.instrumentを参照
    -splash:<imagepath>
                  指定したイメージでスプラッシュ画面を表示する
詳細はhttp://www.oracle.com/technetwork/java/javase/documentation/index.htmlを参照してください。
```

## javac -help

```
$ javac -help
使用方法: javac <options> <source files>
使用可能なオプションには次のものがあります。
  -g                         すべてのデバッグ情報を生成する
  -g:none                    デバッグ情報を生成しない
  -g:{lines,vars,source}     いくつかのデバッグ情報のみを生成する
  -nowarn                    警告を発生させない
  -verbose                   コンパイラの動作についてメッセージを出力する
  -deprecation               非推奨のAPIが使用されているソースの場所を出力する
  -classpath <path>          ユーザー・クラス・ファイルおよび注釈プロセッサを検索する位置を指定する
  -cp <path>                 ユーザー・クラス・ファイルおよび注釈プロセッサを検索する位置を指定する
  -sourcepath <path>         入力ソース・ファイルを検索する位置を指定する
  -bootclasspath <path>      ブートストラップ・クラス・パスの場所をオーバーライドする
  -extdirs <dirs>            インストール済拡張機能の場所をオーバーライドする
  -endorseddirs <dirs>       推奨規格パスの場所をオーバーライドする
  -proc:{none,only}          注釈処理やコンパイルを実行するかどうかを制御します。
  -processor <class1>[,<class2>,<class3>...] 実行する注釈プロセッサの名前。デフォルトの検出処理をバイパス
  -processorpath <path>      注釈プロセッサを検索する位置を指定する
  -parameters                メソッド・パラメータにリフレクション用のメタデータを生成します
  -d <directory>             生成されたクラス・ファイルを格納する位置を指定する
  -s <directory>             生成されたソース・ファイルを格納する場所を指定する
  -h <directory>             生成されたネイティブ・ヘッダー・ファイルを格納する場所を指定する
  -implicit:{none,class}     暗黙的に参照されるファイルについてクラス・ファイルを生成するかどうかを指定する
  -encoding <encoding>       ソース・ファイルが使用する文字エンコーディングを指定する
  -source <release>          指定されたリリースとソースの互換性を保つ
  -target <release>          特定のVMバージョン用のクラス・ファイルを生成する
  -profile <profile>         使用されているAPIが指定したプロファイルで使用可能かどうかを確認します
  -version                   バージョン情報
  -help                      標準オプションの概要を出力する
  -Akey[=value]              注釈プロセッサに渡されるオプション
  -X                         非標準オプションの概要を出力する
  -J<flag>                   <flag>を実行システムに直接渡す
  -Werror                    警告が発生した場合にコンパイルを終了する
  @<filename>                ファイルからの読取りオプションおよびファイル名
```

## 参考資料

- [Java Platform Standard Edition 8ドキュメント \- JDKの開発ツール](https://docs.oracle.com/javase/jp/8/docs/technotes/tools/)