2016-12-18 21 views
0

私はMaven(POM.xmlファイル)を使い慣れていません。POM.xml(MAVEN):参照されたライブラリにJAR依存関係が見つかりません

POM.xmlファイルには、必要なすべてのjarがあります。

私はさらに.M2リポジトリをチェックし、POMに記載されているすべてのjarファイルも持っていますが、プロジェクトを調べると、参照ライブラリのjarファイルを見つけることができません。例えば

<dependency> 
    <groupId>org.hibernate</groupId> 
    <artifactId>hibernate-core</artifactId> 
    <version>${hibernate.core}</version> 
</dependency> 

私はPOMファイルに上記のタグを使用していました。しかし、クラスレベルで@Entity、@ Tableを使用しようとしたとき

モデルクラスでは、エラーが発生しました: "参照されたライブラリにはhibernate-coreがないため、@ Entity /瓶。

POM.xml: 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.anand</groupId> 
    <artifactId>AnandWebStore</artifactId> 
    <packaging>war</packaging> 
    <version>1.0-SNAPSHOT</version> 
    <name>AnandWebStore Maven Webapp</name> 
    <url>http://maven.apache.org</url> 

<properties> 
     <spring.version>4.0.3.RELEASE</spring.version> 
     <hibernate.core>4.2.7.Final</hibernate.core> 
    </properties> 

<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>3.8.1</version> 
     <scope>test</scope> 
    </dependency> 
     <!-- Spring dependencies --> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
      <version>${spring.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
      <version>${spring.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-webmvc</artifactId> 
      <version>${spring.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
      <version>${spring.version}</version> 
     </dependency> 


     <dependency> 
       <groupId>org.springframework</groupId> 
       <artifactId>spring-orm</artifactId> 
       <version>${spring.version}</version> 
     </dependency> 
     <dependency> 
       <groupId>org.springframework</groupId> 
       <artifactId>spring-jms</artifactId> 
       <version>${spring.version}</version> 
     </dependency> 


     <dependency> 
      <groupId>javax.validation</groupId> 
      <artifactId>validation-api</artifactId> 
      <version>1.0.0.GA</version> 
     </dependency> 

     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-validator</artifactId> 
      <version>4.0.2.GA</version> 
     </dependency> 

     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>javax.servlet-api</artifactId> 
      <version>3.1.0</version> 
     </dependency> 


     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-log4j12</artifactId> 
      <version>1.5.6</version> 
     </dependency> 

     <dependency> 
      <groupId>commons-fileupload</groupId> 
      <artifactId>commons-fileupload</artifactId> 
      <version>1.3</version> 
     </dependency> 

     <dependency> 
       <groupId>org.hibernate</groupId> 
       <artifactId>hibernate-core</artifactId> 
       <version>${hibernate.core}</version> 
     </dependency> 

     <dependency> 
      <groupId>com.microsoft.sqlserver</groupId> 
      <artifactId>sqljdbc4</artifactId> 
      <version>4-2.0</version> 
     </dependency> 


    </dependencies> 
    <build> 
    <finalName>AnandWebStore</finalName> 
    </build> 
</project> 

.m2 already have all this file downloaded: 
    [1]: https://i.stack.imgur.com/JkxO4.jpg 


    [2]: https://i.stack.imgur.com/oQU8g.jpg 

This picture shows pom dependencies and referenced libraries:

+0

だから、Referenced liberariesにどのように複製することができますか? –

+0

"実行 - > Mavenビルド"クリーンインストールでプロジェクトをビルドし、取得したエラー(存在する場合)を報告してください。 –

+0

私はこれについて何の答えも得ていないし、Eclipse Lunaのバージョンに切り替えました。問題なくこれを実行しています。 –

答えて

0

私は私がいないことで、この専門家を意味してい認めますよ。

私は解決策を持っていない- I が周り仕事を持っています。

プロジェクトが使用されている場合、pomファイルにはそのファイルがすぐに含まれている必要があります。

ただし、IDEでコーディングする目的で、必要なJARファイルをダウンロードし、IDE設定を使用して手動でJARファイルを参照ライブラリに追加することができます。

あなたのIDEがあなたにオートコンプリートなどを与えるならば、こうすればそれらの能力にアクセスすることができます。また、コンパイルエラーを停止する必要があります。

+0

こんにちは@ jacc734、 はい、それはうまくいくでしょうが、maven(pom.xml)を持つことの意義は何ですか? –

+0

こんにちは@HappyPorwalは、あなたのコンパイル結果やプログラムにその.jarファイルを含めていないことになります。 jarファイルはあなたのIDEのためのものであり、提案やオートコンプリートなどの素晴らしい機能を得ることができますが、Mavenの実用的な使用方法はそのままで、依存関係として使用したjarを含める必要はありません。 – Jacc734

関連する問題