1. ホーム
  2. java

[解決済み] openjdk-6-jre, openjdk-6-jre-headless, openjdk-6-jre-lib の違い。

2022-02-10 11:05:01

質問

Java JREの基本的なことがよくわからなくて困っています。

私は組み込みシステムでJavaコードを実行する必要があり、そのためにはLinuxカーネルにインストールされた最小限のJavaランタイム環境、つまり、Javaバイナリを実行するために必要な最小限のパッケージが必要です。JVMだけでは無理だと思います(JREパッケージは必要です。間違ってますか?)。

Debianのリポジトリを見ると、パッケージの違いがよくわからないということです。 openjdk-6-jre , openjdk-6-jre-headlessopenjdk-6-jre-lib . 前者だけでJavaのプログラムは動くのでしょうか? それとも、この3つが必要なのでしょうか?

両者のサイズ(MB)には大きな差があるため、これは問題です。

解決方法は?

Javaアプリケーションを実行するには、JREパッケージが必要であることは正しいです。

組み込みプラットフォームで動作しているとのことですので、実行したいJavaアプリケーションにはGUIがないものと思われます。その場合は openjdk-6-jre-headless . のページで説明しています。 openjdk-6-jre-headless パッケージのページはこちらです。 最小限のJavaランタイム - GUIでないJavaプログラムの実行に必要です"。

ご覧のように debian パッケージの詳細ページより , openjdk-6-jre-headless に依存します。 openjdk-6-jre-lib (他のパッケージも含めて)なので、どちらにしてもインストールされることになります。

しかし、実行したいJavaアプリケーションがGUIを持つ場合、そのアプリケーションを実行するためには openjdk-6-jre の代わりに openjdk-6-jre-headless