Java
 Computer >> コンピューター >  >> プログラミング >> Java

Java 9のマルチリリースjar(mrjar)とは何ですか?


マルチリリースjar mrjarとも呼ばれます )複数の Jdk用のライブラリの同じリリースが含まれています バージョン 。これは、 mrjarとしてライブラリを持つことができることを意味します これはJdk9で機能します。mrjarのコード クラスが含まれています ファイル Jdk 9でコンパイル 。 Jdk 9でコンパイルされたクラスは、Jdk9が提供するAPIを利用できます。

mrjar jarの既存のディレクトリ構造を拡張できます。 ルートディレクトリが含まれています すべてのコンテンツが存在する場所とMETA-INF ディレクトリ メタデータを保存するために使用されます 瓶について。通常、jarには META-INF / MANIFEST.MFが含まれています 属性を含むファイル。

以下のようなjarファイルのエントリ:

- jar-root
- C1.class
- C2.class
- C3.class
- C4.class
- META-INF
- MANIFEST.MF

上記のテンプレートでは、jarには4つのクラスファイルと MANIFEST.MFが含まれています ファイル。 mrjarは、META-INFディレクトリを拡張して、Jdkバージョンに固有のクラスを格納します。 META-INF ディレクトリにはバージョンが含まれています 多くのサブディレクトリを含むサブディレクトリ。各サブディレクトリには、Jdkメジャーバージョンと同じ名前が付けられています。たとえば、Jdk 9に固有のクラスには、 META-INF / versions/9ディレクトリがあります。 。 Jdk 10に固有のクラスには、 META-INF / versions / 10があります。 。

- jar-root
 - C1.class
 - C2.class
 - C3.class
 - C4.class
- META-INF
 - MANIFEST.MF
 - versions
 - 9
  - C2.class
  - C5.class
 - 10
  - C1.class
  - C2.class
  - C6.class

  1. JavaでのSwingWorkerクラスの重要性は何ですか?

    SwingWorker クラスを使用すると、非同期を実行できます タスク ワーカースレッド(長時間実行タスクなど)で、イベントディスパッチスレッド(EDT )からSwingコンポーネントを更新します。 ) タスクの結果に基づきます。 Java1.6バージョンで導入されました。 SwingWorkerクラス java.swing.SwingWorker クラスはタスクワーカーであり、時間のかかるタスクをバックグラウンドで実行します。 SwingWorker インスタンスは3つのスレッドと相互作用します。現在 スレッド 、ワーカースレッド 、およびイベントディスパッチスレッド(E

  2. JavaでのSwingUtilitiesクラスの重要性は何ですか?

    Javaでは、Swingコンポーネントが画面に表示された後、それらはイベント処理スレッドと呼ばれる1つのスレッドでのみ操作できます。 。別のブロックにコードを記述し、このブロックにイベントへの参照を与えることができます 処理 スレッド 。 SwingUtilities クラスには、 invokeAndWait()という2つの重要な静的メソッドがあります。 およびinvokeLater() コードのブロックへの参照をイベントに配置するために使用します キュー 。 構文 public static void invokeAndWait(Runnable doRun) throws Interr