2010-12-06 10 views
0

私はHibernate 3の新機能ですが、
の違いを理解していません1)* http://sourceforge.net/projects/hibernate/files/hibernate3/

2)* https://repository.jboss.org/nexus/content/groups/public/
Hibernateチュートリアルファイルをコンパイルする場合は、
私は*のhttpからHibernateのチュートリアル以下午前:私は休止状態3. IにはSETUP.EXEがない理解したよう//docs.jboss.org/hibernate/core/3.6/quickstart/en-US/html_single/

をsetup.exeを使用する代わりに、クラスパスを設定してHibernate 3をインストールする必要があると仮定します。 私は* http://sourceforge.net/projects/hibernate/files/hibernate3/のリストからHibernateのリリースをダウンロードしました。それは140 MB以上です。この140 MBのファイルを解凍した後、私はクラスパスを設定しませんでした。

* http://docs.jboss.org/hibernate/core/3.6/quickstart/en-US/html_single/files/hibernate-tutorials.zipからチュートリアルコードをダウンロードし、解凍してこの方法でpom.xmlを編集しましたこのチュートリアルでは、
1)のように2つのリポジトリを使用すること*のhttp://repo1.maven.org/maven2/

2)* HTTPS://repository.jboss.org/nexus/content/groups/public/

次に、mvnをコンパイルしてビルドしました。

このビルドはどのように成功した可能性がありますか?クラスパスを設定しなかったため、プロジェクトのクラスパスにHibernate 3(その140 MBファイル)は含まれていませんでした。さらに、私は自分のプロジェクトのクラスパスにどのような意味があるのか​​理解できません。/libに//
3)パス/に/ libに/ JPA/
必要とする
1)パス/に/ hibernate3.jarを
2)パス/:それは、Windows XPの下で、私は、環境変数などを設定する必要があることを意味しています これらの3つのパスを環境変数に追加すると、何も変更されませんでした。mvnコンパイルは前と同じように機能しました。私は間違った方法でこのクラスパスを設定しましたか?私の視点で

すべてで休止状態3(140メガバイト)をダウンロードすると、正常にこの休止アプリケーション(チュートリアルファイル)を構築する必要があったすべてのファイルがリポジトリからダウンロードされた必要はないように私には思えます。

私は何を誤解していますか?

ありがとうございます!Hibernateリリースバンドルとpom.xml:開発環境の設定

答えて

0

Mavenの動作方法を読む必要があります。ある程度詳細にそのすべてを説明しますBetter Builds with Mavenと呼ばれる優れた無料のPDFは、しかし、ここに沿ってあなたを助けるために簡単に説明があり、そこにあります。

Mavenは

ビルドシステムであるので、それはあなたのプロジェクトをビルドする方法を管理します。これは、pom.xmlに設定した設定の詳細に基づいています。あなたは依存関係を定義し、Mavenはそれらの場所を設定するか、それ自身のデフォルトの場所に依存するMavenを見つける方法を知っています。 (http://repo1.maven.org/maven2/から来ているところです)。

Mavenはそれぞれ位相が前のものに依存して、定義された段階的に構築します。ためには、これらの(簡単なプレゼンテーションのために簡略化)されています

  1. クリーン - (通常は「ターゲット」で)以前のコンパイル作業を一掃し、新たに
  2. コピーリソースを開始 - へのsrc /メイン/リソースの下にあるすべてのものをコピーしますターゲット/クラス
  3. コンパイル - (必要な場合はsrc /テスト/リソースを使用して)のsrc /テスト/ javaの下のテストを実行
  4. パッケージ - - ビルド/クラス
  5. テストをターゲットにするのsrc /メイン/ javaの下にすべてをコンパイルターゲットアーティファクト(JAR、WAR、EARなど)
  6. インストール - (他のローカルプロジェクトと共有する)ローカルリポジトリにアーティファクトを入れ
  7. 展開 - 上記から

(他の皆と共有するために)チームのリポジトリにアーティファクトを入れて、それがあるべきMavenのpom.xmlにHibernate3を依存関係として指定すると、MavenにはHibernateを構成する必要なJARファイルがないかどうかローカルリポジトリを調べるよう指示されます。そこに見つからない場合は、チームリポジトリ(.m2/settings.xmlファイルに記載されている場合)が表示されます。そこになければ、Mavenの中心(http://repo1.maven.org/maven2/)からダウンロードします。

MavenはプロジェクトがHibernateに依存していることを意味する推移的依存関係の概念を使用しますが、HibernateはANTLRなどに依存するCGLIBに依存します。それについて考える必要はありません.Mavenは、プロジェクトを動作させるために必要なすべての関連するJARを持ってきてくれます。