[解決済み] runnable jarのライブラリ処理オプションの違いは何ですか?
質問
Java Web Start を使用して Java アプリケーションをデプロイする予定です。Runnable Jar にエクスポートするとき、eclipse Helios には 3 つのオプションがあります。
- 必要なライブラリをJARに展開する
- 必要なライブラリをJARにパッケージする
- 必要なライブラリをJARの横のサブフォルダにコピーします。
相違点は何ですか?また、私の .jnlp ファイルにどのような影響を与えますか?
単一のjarであれば、使用するすべてのライブラリの異なるパスを書く必要がないので、簡単ではないでしょうか?
ライブラリとアプリケーションの両方に変更がある場合、単一の jar がより良い解決策になりますか?それとも
<jar href=''>
が必要でしょうか?
また、私は.dllや.soファイルのようなネイティブライブラリを使用する必要があることに注意してください。
どのように解決するのですか?
-
必要なライブラリをJARに展開する - 実際の
.class
ファイルを抽出し、それをJARに格納します。.class
ファイルを実行可能な JAR の中に置きます。 したがって、実行可能な JAR には.class
ファイルだけでなく、アプリケーションの.class
ファイルだけでなく、アプリケーションが使用するすべてのライブラリのファイルも含まれます。 -
必要なライブラリをJARにパッケージする - 実際の JAR ファイル を実行可能なJARに入れます。 通常、JARファイルの中のJARファイルは、JVMによって読み込まれることはありません。 しかし、Eclipse は実行可能な JAR に特別なクラスを追加して、これを可能にします。
-
必要なライブラリをJARの隣のサブフォルダにコピーします。 - ライブラリJARを実行可能なJARから完全に分離することで、実行可能なJARには
.class
ファイルだけが含まれます。
オプション #2 は、すべてを単一の JAR にきちんとパッケージ化し、ライブラリ JAR をアプリケーションの
.class
ファイルから分離されます。
しかし、すべてを単一の JAR 内にパッケージングすることの欠点 (オプション #1 と #2) は、アプリケーションを更新した場合、ユーザーはアプリケーションを更新するためにさらにデータをダウンロードしなければならないことです。 JAR を別々にすれば、ユーザーはアプリケーション コードを含む JAR をダウンロードするだけでよくなり、アプリケーション コードを含む巨大な JAR を 1 つダウンロードする必要がなくなります と すべてのライブラリコードを含む単一の巨大な JAR をダウンロードする必要はありません。
関連
-
[解決済み】JNI共有ライブラリ(JDK)の読み込みに失敗しました。)
-
[解決済み] Javaにおけるjarとwarの違い
-
[解決済み] Windows 8.1の高解像度画面ではEclipseのインターフェイスアイコンが非常に小さい
-
[解決済み] Eclipseのコンソールサイズを調整する
-
[解決済み] Eclipseのファイル検索タブに直接ホットキーでアクセスする方法
-
[解決済み] Eclipseでデバッグ中に変数が表示されない
-
[解決済み] EGitとGitHubで "Auth Failed "エラー
-
[解決済み] EclipseでCtrl-Spaceを押さずに操作する方法
-
[解決済み] EclipseのCtrl+Shift+FとCtrl+Iの違いについて
-
[解決済み] Eclipse にコマンドライン引数を入力させる方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Eclipse : リソースのフィルタリング中にエラーが発生しました
-
[解決済み] EclipseでTomcatサーバーのタイムアウトを変更する
-
[解決済み] EclipseプロジェクトにMavenの依存関係がない
-
[解決済み] Eclipseのバージョン番号を調べる
-
[解決済み] Eclipseショートカット「行+列へ移動」(go to line + column)
-
[解決済み] Egitはファストフォワード以外を拒否
-
[解決済み] Eclipseで選択したリソースに対してWindowsエクスプローラを開く方法
-
[解決済み] Eclipseに「Find in Files」のショートカットはありますか?
-
[解決済み] Eclipseの自動保存
-
[解決済み] Eclipseで、ある文字を改行で置き換えるには?