Raspberry Pi で Java プログラムを実行するさまざまな方法について、少し混乱しています。私が見る限り、次の可能性があります。
Java 6:
- Java SE 6 組み込み
Java7:
- OpenJDK 7
- Java SE 7 組み込み
- JDK 7.40 (およびそれ以降)
Java 8:
- JDK8
これにより、次の疑問が生じます。
- JDK に同梱されている JVM と Java SE に違いはありますか?
- OpenJDK 6 または 8 の ARM バージョンはありませんか?
- 通常の Java SE 7 VM (JDK 7 に含まれる) に対する Java SE 7 Embedded の利点は何ですか? 以下の点しか見つかりませんでした。
- 低メモリフットプリント
- AWT/スイングなし
- Raspberry Pi 用 Java SE 7.40 Oracle ホームページには、ARM v6/v7 Soft Float ABI および v7 Hard Float ABI バージョンのダウンロードのみがリストされています。Raspberry Pi は v6 アーキテクチャを使用しているため、Soft Float バージョンを使用する必要があると思います。したがって、Soft Float ABI も使用する Java SE 7 Embedded VM よりも速度が向上することはありません。
- Java SE 8 の組み込みバージョンはありませんか?
- JDK 8 は常に Hard Float ABI を使用しますか? それとも Soft Float ABI バージョンもありますか?
総括する:
- Hard Float ABI を使用する場合は、JDK 8 の開発者プレビューを使用します。
- メモリ フットプリントが小さい安定した Java バージョンが必要な場合は、Java SE 7 Embedded を使用します。
- 安定した Java バージョンが必要で、Swing/Awt を使用したい場合は、JDK 7.40 (およびそれ以降) を使用してください。