2012-01-14 4 views
-1

Javaの問題の1つは、同じシステム上に重複したライブラリを作成することです。私たちはmavenのような製品を持っているので、なぜこれがまだ必要なのか不思議でした。たとえば、特定のマシンまたは特定のアプリケーションサーバー上の実行中のすべてのJavaアプリケーションに対して、最終的なリリース専用のリポジトリを中央に置くことができます。アプリケーションサーバーの場合、依存関係をプログラマチックに処理するもの(Spring構成のmaven-likeメカニズムなど)に特異な依存関係を作成した場合、依存関係のすべてを自動で処理することはできませんでしたか?それがSpringの設定ではできない場合は、おそらくコンテナを拡張することができますか?私はそのトリックがClasspathを構築しているかもしれないと思うが、それは本当に克服できないように思われる。特に上位3つのOSはすべてシンボリックリンクを持っているので、特にそうです。かなりの間に見えたが、取り扱いおよび/またはJavaでそれらを作成する方法は、今そこにある表示されていない:グローバルリポジトリを作成し、重複したライブラリや配備の複雑さを減らすために、maven + springを使用できませんでしたか?

もちろん、シンボリックリンクの

http://docs.oracle.com/javase/tutorial/essential/io/links.html

でもやり過ぎかもしれません。

これらのアイデアを使用して、すべてのJava SE/Java EEアプリケーションの依存関係管理やデプロイメントを大幅に簡素化することはできませんでしたか?

+0

私にとっては重複していないことは何ですか?あなたの組織内のMavenリポジトリ間のジャー?私は、HDDのスペースはそれほど安く、誰も気にしないと思う:重複をなくす時間は、あなたが得るディスクスペース以上のコストがかかる。 –

+0

合意 - OPが解決しようとしている問題よりも悪い結果(複雑性、脆弱性、起動が遅い)を提案しているようです。言うまでもなく、その問題が本当に何であるかは明らかではない。 –

答えて

0

この記事によると:要約すると

http://www.infoq.com/news/2009/06/jigsaw

、これらのアイデアは、Java 7の一部であるJVMは、ジグソーと呼ばれる依存関係の管理サブコンポーネントおよび新しいは何それをつかむためにキーワードが必要になりますニーズ。

0

IBM WebSphereには共有ライブラリと呼ばれる機能があります。ライブラリエンティティを作成して複数のプロジェクトでインポートすることができます。 Oracle Weblogicでは、おそらくライブラリとして展開したり、パスをweblogic-application.xmlに追加することができます。私はmavenの使用が必要であるとは思わない。

+0

Tomcatが同じマシン上で動作しているかどうか、またはJSEアプリケーションでも使用されているライブラリがあるかどうかによって異なります。その目的は、ハードドライブにライブラリがある場合、それを必要とする任意のアプリケーションで冗長性なしに使用できるようにすることです。 – user447607

+0

sry私はあなたの質問の完全な幅を得ることができませんでした – MozenRath

0

equinoxおよびfelixなどのコンテナは、依存関係の管理を展開の領域に拡張するOSGiという標準をサポートしています。一言で言えば

、1はあなたのパッケージの実行時の依存関係を述べ、「バンドル」をリリースし、コンテナはそのバージョンが(孤立クラスローダのJ2EEコンテナのアプローチよりも効率)が実行されていることを確認します

と本当の問題OSGiは採用が不十分です。ツーリングは改善されましたが、Sun(現在のOracle)はJ2EEの一部としてこれを採用していません。 jigsawは「大きな白い希望」であると思われ、私は最近、OSGi対Jisawの議論に従っていないという点で正直である。結局のところ、依存領域管理を展開領域に拡張することは素晴らしい考えですが、コンテナをサポートする必要があります。 OSGiは標準に最も近いものです。

+0

それはコンテナに依存していて、自然にコンテナが必要であることを意味します。なぜなら、個々のマシンごとに1つのJ2SE Springコンテナ(おそらく?このコンテナは、必要なすべてのライブラリを1か所に配置して、アプリケーションとアプリケーションサーバーが必要なライブラリを探す場所を1つしか持たないようにします。 – user447607

+0

なぜホイールを再発明するのですか? OSGIとジグソーパズルは既にこの分野ではあまりにも多くの1つの解決策です:-) –

関連する問題