2011-12-17 6 views
12

多くの依存関係を持つJavaアプリケーションの配布方法(Mavenのpom.xmlで指定)に興味があります。独自の依存関係をダウンロードするJavaアプリケーションの作成

明らかに、すべてを1つの大きな.jarファイルにパッケージ化することは可能です。しかし、アプリケーションの更新では、すべての依存関係の新しいコピーを送信する必要があるため、無駄に見えます。

だから私は、次のないアプリ配布の方法を探しています:とき.jarファイル、必要に応じて

  • は本体のみの.jarファイルにコアアプリケーション
  • ダウンロードの依存関係を含んでいるが
  • アプリケーションのアップデートが配布されている場合、依存関係が再び

最高WA何ダウンロードする必要がないように、ローカルの依存関係のコピーを保持しますが実行されますこれを達成するy?

+0

OSGiはここでは残酷なようですが、再起動せずにバンドルをダウンロードしてアップデートするという素晴らしい機能があると思います。 –

+0

これは今あなたを助けるものではありませんが、私はJDKのレベルでこの問題を解決する作業が進行中であると言います。これはProject Jigsawと呼ばれ、現在JDK 8に含まれる予定です。詳細はこちら:http://openjdk.java.net/projects/jigsaw/ – ivantod

+0

@ivantod:3年後。 JDK 8は廃止されました。ジグソーパズルはまだありません。しかし、まだロードマップに。 – Thilo

答えて

2

web start technology(別名jnlpファイルを配布)を使用してファイルを配布できます。私は、これがあなたのためにこの機能の大部分を扱うと信じています。

+0

[Java Web Start](http:// stackoverflow .com/tags/java-web-start/info)タグ情報。上記のリンクと8つ以上の情報とJWSの「開発者向けの」記述が含まれています。 –

3

Maven Run Projectで説明されているようなものをMavenで使用できますか?

これは、私自身のネットワーク内で自分のアプリケーションをセットアップする方法です。私は、クラスパスを混乱させることや、長い間このようなプログラム設定のための依存関係をダウンロード/提供することについて心配する必要は一度もありません。このアプローチはまた、すべての基準を満たしています。

+0

おそらくユーザがそれに対処する必要がないように、mavenの周りのラッパーかもしれません。更新を押すだけでいくつかのポームが変わり、残りの部分はmavenが処理します。 – milan

関連する問題