2012-07-06 51 views
2

这是我第一次使用Maven,出于某种原因,在我的机器上,我无法获得我需要的两种hibernate依赖关系。我的pom.xml文件低于:SpringSource工具套件中的Maven依赖关系

  <?xml version="1.0" encoding="UTF-8"?> 
      <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.aramburu</groupId> 
       <artifactId>depcheck</artifactId> 
       <name>depcheck</name> 
       <packaging>war</packaging> 
       <version>1.0.0-BUILD-SNAPSHOT</version> 

       <properties> 
        <java-version>1.6</java-version> 
        <org.springframework-version>3.1.0.RELEASE</org.springframework-version> 
        <org.aspectj-version>1.6.9</org.aspectj-version> 
        <org.slf4j-version>1.5.10</org.slf4j-version> 
       </properties> 
       <dependencies> 
        <!-- Spring --> 
        <dependency> 
         <groupId>org.springframework</groupId> 
         <artifactId>spring-context</artifactId> 
         <version>${org.springframework-version}</version> 
         <exclusions> 
          <!-- Exclude Commons Logging in favor of SLF4j --> 
          <exclusion> 
           <groupId>commons-logging</groupId> 
           <artifactId>commons-logging</artifactId> 
          </exclusion> 
         </exclusions> 
        </dependency> 
        <dependency> 
         <groupId>org.springframework</groupId> 
         <artifactId>spring-webmvc</artifactId> 
         <version>${org.springframework-version}</version> 
        </dependency> 

        <!-- AspectJ --> 
        <dependency> 
         <groupId>org.aspectj</groupId> 
         <artifactId>aspectjrt</artifactId> 
         <version>${org.aspectj-version}</version> 
        </dependency> 

        <!-- Logging --> 
        <dependency> 
         <groupId>org.slf4j</groupId> 
         <artifactId>slf4j-api</artifactId> 
         <version>${org.slf4j-version}</version> 
        </dependency> 
        <dependency> 
         <groupId>org.slf4j</groupId> 
         <artifactId>jcl-over-slf4j</artifactId> 
         <version>${org.slf4j-version}</version> 
         <scope>runtime</scope> 
        </dependency> 
        <dependency> 
         <groupId>org.slf4j</groupId> 
         <artifactId>slf4j-log4j12</artifactId> 
         <version>${org.slf4j-version}</version> 
         <scope>runtime</scope> 
        </dependency> 
        <dependency> 
         <groupId>log4j</groupId> 
         <artifactId>log4j</artifactId> 
         <version>1.2.15</version> 
         <exclusions> 
          <exclusion> 
           <groupId>javax.mail</groupId> 
           <artifactId>mail</artifactId> 
          </exclusion> 
          <exclusion> 
           <groupId>javax.jms</groupId> 
           <artifactId>jms</artifactId> 
          </exclusion> 
          <exclusion> 
           <groupId>com.sun.jdmk</groupId> 
           <artifactId>jmxtools</artifactId> 
          </exclusion> 
          <exclusion> 
           <groupId>com.sun.jmx</groupId> 
           <artifactId>jmxri</artifactId> 
          </exclusion> 
         </exclusions> 
         <scope>runtime</scope> 
        </dependency> 

        <!-- @Inject --> 
        <dependency> 
         <groupId>javax.inject</groupId> 
         <artifactId>javax.inject</artifactId> 
         <version>1</version> 
        </dependency> 

        <!-- Servlet --> 
        <dependency> 
         <groupId>javax.servlet</groupId> 
         <artifactId>servlet-api</artifactId> 
         <version>2.5</version> 
         <scope>provided</scope> 
        </dependency> 
        <dependency> 
         <groupId>javax.servlet.jsp</groupId> 
         <artifactId>jsp-api</artifactId> 
         <version>2.1</version> 
         <scope>provided</scope> 
        </dependency> 
        <dependency> 
         <groupId>javax.servlet</groupId> 
         <artifactId>jstl</artifactId> 
         <version>1.2</version> 
        </dependency> 

        <!-- Test --> 
        <dependency> 
         <groupId>junit</groupId> 
         <artifactId>junit</artifactId> 
         <version>4.7</version> 
         <scope>test</scope> 
        </dependency> 
        <dependency> 
         <groupId>javax.validation</groupId> 
         <artifactId>validation-api</artifactId> 
        </dependency> 
        <dependency> 
         <groupId>org.hibernate</groupId> 
         <artifactId>hibernate-entitymanager</artifactId> 
         <version>3.6.8.Final</version><!--$NO-MVN-MAN-VER$--> 
        </dependency> 
       </dependencies> 
       <build> 
        <plugins> 
         <plugin> 
          <artifactId>maven-eclipse-plugin</artifactId> 
          <version>2.9</version> 
          <configuration> 
           <additionalProjectnatures> 
            <projectnature>org.springframework.ide.eclipse.core.springnature</projectnature> 
           </additionalProjectnatures> 
           <additionalBuildcommands> 
            <buildcommand>org.springframework.ide.eclipse.core.springbuilder</buildcommand> 
           </additionalBuildcommands> 
           <downloadSources>true</downloadSources> 
           <downloadJavadocs>true</downloadJavadocs> 
          </configuration> 
         </plugin> 
         <plugin> 
          <groupId>org.apache.maven.plugins</groupId> 
          <artifactId>maven-compiler-plugin</artifactId> 
          <version>2.3.2</version> 
          <configuration> 
           <source>1.6</source> 
           <target>1.6</target> 
           <compilerArgument>-Xlint:all</compilerArgument> 
           <showWarnings>true</showWarnings> 
           <showDeprecation>true</showDeprecation> 
          </configuration> 
         </plugin> 
         <plugin> 
          <groupId>org.codehaus.mojo</groupId> 
          <artifactId>exec-maven-plugin</artifactId> 
          <version>1.2.1</version> 
          <configuration> 
           <mainClass>org.test.int1.Main</mainClass> 
          </configuration> 
         </plugin> 
        </plugins> 
       </build> 

       <dependencyManagement> 

        <dependencies> 
         <dependency> 
          <groupId>javax.validation</groupId> 
          <artifactId>validation-api</artifactId> 
          <version>1.0.0.GA</version> 
         </dependency> 
         <dependency> 
          <groupId>org.hibernate</groupId> 
          <artifactId>hibernate-entitymanager</artifactId> 
          <version>3.6.8.Final</version> 
         </dependency> 
        </dependencies> 
       </dependencyManagement> 
      </project> 

出于某种原因org.hibernate作为冬眠-的EntityManager

无法找到。我使用的maven安装程序是springource工具套件的默认配置。我没有修改他们给我的maven版本。我试图在安装了jdk 7的64位Windows机器上构建它。

我已经研究过其他的解决方案,比如当你右键点击一个项目并转到maven时弹出的菜单中更新deprain和配置。

有些人说我需要启用依赖关系,但是没有菜单可以在右侧执行此操作,我可以下载像hibernate核心这样的东西,并且可以正确解决依赖关系。只是有特定的依赖问题。

我是否需要将存储库或任何此类性质添加到随SpringSource Tool Suite中的maven安装提供的原始settings.xml文件中?

回答

2

这种依赖性似乎在默认存储库Maven是寻找到可以不存在,它在jboss's maven repository

存在,所以让行家来寻找该仓库也添加以下到您的pom.xml

<project ...> 
<repositories> 
    <repository> 
     <id>JBoss repository</id> 
     <url>http://snapshots.jboss.org/maven2</url> 
    </repository> 
</repositories> 
</project> 

并尝试mvn clean install

+0

我通过编辑回复了你的评论,但我得到一个错误使用这个我需要添加一个pom.xml到我的maven我型挡板? – flips 2012-07-06 04:59:06

+0

每个maven项目都有一个pom.xml文件,你需要在其中添加这个配置 – 2012-07-06 05:01:04

+0

感谢jigar你的建议很好用我很欣赏 – flips 2012-07-06 08:05:31

0

如果您从控制台运行Maven,则需要使用您的pom.xml文件在目录中执行此操作。

对Hibernate的东西,你可能需要声明在你的pom.xml(或settings.xml中)以下:

<repository> 
     <id>repository.jboss.org</id> 
     <name>JBoss Repository</name> 
     <url>https://repository.jboss.org/nexus/content/repositories/releases/</url> 
    </repository>