ヘッドレスサーバーにJavaとTomcatをインストールしています。クライアントにはJavaがなく、Webページのみを表示できます。
openjdk-17またはopenjdk-17-headlessをインストールする必要がありますか?
答え1
Javaの世界では、「ヘッドレス」は「GUIなし」を意味します。ここで、GUI はローカル UI (HTML を使用して一部のリモートシステムでレンダリングされる UI とは反対) として理解されます。したがって、ほとんどのサーバーアプリケーションはヘッドレスJREでうまく機能します。 1つの副作用は、ヘッドレスJREがX11依存関係を導入しないことです。
しかし、いくつかの例外があります。一部のJavaプログラムにはUIがありませんが、まだGUI関連のモジュールまたはパッケージが必要です。例えば画像処理に使用されます。これらのプログラムには最終的にヘッドレスではなくJREが必要です(または以前はしばらく設定していません)。
Debianを使用している場合、TomcatパッケージはデフォルトでヘッドレスJREを使用します。これは、ほとんどの場合、ヘッドレスJREが適しているという強力な指標です。
答え2
これ首のないキーボードと画面のないシステムを説明する奇妙な用語です。 Javaの場合、これは重要な部分であり、複雑なGUIインタフェースをサポートしていないことを意味します。
サーバーは通常Java GUIを必要としないので、ヘッドレスバージョンで十分です。注:Java GUIに関するものなので、Javaはオペレーティングシステムを使用して物事を表示します。画像などの作成や操作とは関係ありません。