0

以下のサイトを使用して Maven Web プロジェクトを作成しました。

http://www.mkyong.com/maven/how-to-create-a-web-application-project-with-maven/

そこに記載されているすべての手順を実行し、単純な hello world プログラムを実行しました。ここで、Spring の依存関係を Eclipse Web プロジェクトに含める必要があります。

そう

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring</artifactId>
    <version>3.1.2</version>
</dependency>

依存関係タグで、上記の構成を追加しました。今、それは以下のように言っています:

unable to find jars from the repositories (local and as well as remote)

コマンドを実行するよう提案しました:

mvn install -artifactid=springframework   (something like this)

しかし、バージョンを 2.5.6 として言及したとき、それは正しく取得されました。バージョン 3.1.2 が Maven リポジトリで利用できないという問題ですか? maven が最新バージョンで正しく動作しない場合、最新バージョンを入手するにはどうすればよいですか?

また、手動でダウンロードしてローカルリポジトリに配置することを提案しました。

4

1 に答える 1

1

Mavenの座標は時間とともに変化しました。

試す:

<dependency>
        <groupId>org.springframework</groupId>
        <artifactId>org.springframework.core</artifactId>
        <version>3.1.2.RELEASE</version>
</dependency>

または試してみてください:

<dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>3.1.2.RELEASE</version>
</dependency>

オールインワンのPOMまたは依存関係があるかどうかを確認します。ただし、「spring-full」は1.2.xのみに見え、「spring」は2.5.xに見えます。チェック済み:しばらくの間、すべてのプロジェクトで別々のモジュールを使用しているモジュールが見つかりません(とにかく、これはより良い、きめ細かい依存関係です)。

検索できる場所はhttp://ebr.springsource.com/repository/app/です。

3.1.2については、http: //ebr.springsource.com/repository/app/library/version/detail?name = org.springframework.spring&version = 3.1.2.RELEASE&searchType = librariesByName&searchQuery=springを参照してください。

Springは、過去4年間で、リポジトリのURLとオンラインの場所を少なくとも3回変更しました。<repositories>そのため、JARを取得するためのMaven構成のセットアップに関する最新情報をWebサイトで探します。古い情報のある記事に注意してください:(

また、2つの例ではartifactIdが異なることに注意してください。これは、Springに関するもう1つの落とし穴の問題です。「org.springframework.core」は、ソフトウェアのEBRおよびOSGi準拠バージョンです。「スプリングコア」は、OSGi以前の古い座標です。自分に合ったものを見つけて、同じプロジェクトに混ぜないでください。たとえば、Milestoneリリースである3.2.0.M2を使用しているため、「spring-core」を使用しています。ただし、製品リリースのEBR座標を使用するのが最適です。

たくさんの編集をしてすみません...しかし、Spring Sourceソフトウェアを入手することの遺産を理解していても、それは地雷原でした。

于 2012-09-22T09:26:32.047 に答える