そこで、Java Web Startを使用してJavaアプリケーションをデプロイします。RunnableJarにエクスポートする場合、Eclipse Heliosには3つのオプションがあります。
相違点とは何ですか?また、.jnlpファイルにどのような影響がありますか?
単一のjarの場合、使用するすべてのライブラリへのすべての異なるパスを記述する必要がないため、簡単ではありませんか?
ライブラリとアプリケーションの両方に変更がある場合、単一のjarがより良いソリューションでしょうか?それとも<jar href=''>
個々のライブラリごと?
また、.dllや.soファイルなどのネイティブライブラリを使用する必要があることに注意してください。
必要なライブラリをJARに抽出-アプリが使用するライブラリから実際の.class
ファイルを抽出し、それらの.class
ファイルを実行可能なJAR内に配置します。そのため、実行可能なJARには、アプリケーションの.class
ファイルだけでなく、アプリケーションが使用するすべてのライブラリの.class
ファイルも含まれます。
必要なライブラリをJARにパッケージ化-ライブラリの実際のJARファイルを実行可能なJARに配置します。通常、JARファイル内のJARファイルはJVMによってロードできません。しかし、Eclipseはこれを可能にするために、実行可能なJARに特別なクラスを追加します。
必要なライブラリをJARの隣のサブフォルダにコピー-ライブラリJARを実行可能なJARから完全に分離します。したがって、実行可能なJARにはアプリケーションの.class
ファイルのみが含まれます。
オプション#2は、すべてを単一のJARにきちんとパッケージ化し、アプリケーションの.class
ファイルからライブラリJARを分離するので便利です。
ただし、すべてを単一のJAR(オプション#1および#2)内にパッケージ化することのマイナス面は、アプリケーションを更新する場合、ユーザーはアプリケーションを更新するためにより多くのデータをダウンロードする必要があることです。 JARを個別に保持する場合、ユーザーは、アプリケーションコードおよびすべてを含む単一の大規模なJARではなく、アプリケーションコードを含むJARをダウンロードするだけで済みます。ライブラリコード。