eclipse - POM 依赖项不起作用(Eclipse、Maven、POM)

标签 eclipse hibernate maven-2 pom.xml

我在 Eclipse (Helios) 中有一个项目,带有 Maven pom.xml。 我的项目是一个将使用 Hibernate、MySQL 的 Web 应用程序。

但是我在正确处理 pom.xml 方面遇到了无尽的麻烦。我是 Maven 新手,不敢相信设置依赖项如此困难(其他人有类似的经验/还是我很笨)。

我的 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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>MyProj1</groupId>
  <artifactId>MyProj1</artifactId>
  <version>0.0.1-SNAPSHOT</version>

  <repositories>
    <repository>
      <id>jboss-public-repository-group</id>
      <name>JBoss Public Repository Group</name>
      <url>http://repository.jboss.org/nexus/content/groups/public/</url>
      <layout>default</layout> 
      <releases> 
        <enabled>true</enabled>
        <updatePolicy>never</updatePolicy>
      </releases>
      <snapshots>
        <enabled>true</enabled>
        <updatePolicy>never</updatePolicy>
      </snapshots> 
    </repository>

    <repository>
      <id>Scala Tools</id>
      <name>Scala Tools</name>
      <url>http://scala-tools.org/repo-releases/</url>
      <layout>default</layout> 
      <releases> 
        <enabled>true</enabled>
        <updatePolicy>never</updatePolicy>
      </releases>
      <snapshots>
        <enabled>true</enabled>
        <updatePolicy>never</updatePolicy>
      </snapshots> 
    </repository>

  </repositories> 

  <dependencies> 

    <dependency> 
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.1</version>
    </dependency>
     <dependency> 
            <groupId>org.hibernate</groupId> 
            <artifactId>hibernate-entitymanager</artifactId> 
            <version>3.6.4.Final</version> 
        </dependency>       
          <dependency> 
            <groupId>org.hibernate</groupId> 
            <artifactId>hibernate-core</artifactId> 
            <version>3.6.4.Final</version> 
        </dependency>
        <!-- 
        <dependency>         
            <groupId>org.hibernate</groupId>         
            <artifactId>hibernate-annotations</artifactId>         
            <version>3.6.4.Final</version>     
        </dependency> 
         -->
        <dependency>  
            <groupId>antlr</groupId> 
            <artifactId>antlr</artifactId> 
            <version>2.7.6-brew</version> 
        </dependency>            
        <dependency>  
            <groupId>dom4j</groupId> 
            <artifactId>dom4j</artifactId> 
            <version>1.6.1-jboss</version> 
        </dependency>                    
        <dependency>  
            <groupId>asm</groupId>  
            <artifactId>asm</artifactId>  
            <version>1.4.3</version> 
        </dependency>   
        <dependency>  
            <groupId>cglib</groupId>  
            <artifactId>cglib</artifactId>  
            <version>2.1.1</version>  
        </dependency>     

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.16</version>
        </dependency>
  </dependencies>
</project>

我得到的错误是:

Missing artifact commons-logging:commons-logging:jar:1.1.1:compile

Missing artifact org.hibernate:hibernate-entitymanager:jar:3.6.4.Final:compile

Missing artifact javassist:javassist:jar:3.12.0.GA:compile

Missing artifact org.hibernate.javax.persistence:hibernate-jpa-2.0-api:jar:1.0.0.Final:compile

Missing artifact org.slf4j:slf4j-api:jar:1.6.1:compile

Missing artifact org.hibernate:hibernate-core:jar:3.6.4.Final:compile

Missing artifact commons-collections:commons-collections:jar:3.1:compile

Missing artifact org.hibernate:hibernate-commons-annotations:jar:3.2.0.Final:compile

Missing artifact javax.transaction:jta:jar:1.1:compile

Missing artifact antlr:antlr:jar:2.7.6-brew:compile

Missing artifact dom4j:dom4j:jar:1.6.1-jboss:compile

Missing artifact xml-apis:xml-apis:jar:1.0.b2:compile

Missing artifact asm:asm:jar:1.4.3:compile

Missing artifact cglib:cglib:jar:2.1.1:compile

---

如果我从 pom.xml 文件中删除 mysql 依赖项,上述所有错误都会消失。 我完全困惑为什么 mysql 应该依赖这些。

Maven 不是应该自动解决这些依赖关系吗?毕竟这不是使用 Maven 的全部理念。

请专家指导我正确的方向。

最佳答案

您可以在此处搜索依赖项:

http://mvnrepository.com

对于 Maven2 来说是:

http://repo1.maven.org/maven2/

众所周知,Hibernate 很难设置正确的依赖项。

参见:How can I use Maven to get the latest Hibernate release?

关于eclipse - POM 依赖项不起作用(Eclipse、Maven、POM),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6088256/

相关文章:

java - 加载程序约束违规

spring - 使用 JerseyTest、Maven 和 TestNG 测试 Jersey-Spring 集成

java - hibernate 事务: what is the point of this code?

java - 使用 Spring JPA/Hibernate 的条件插入

java - 如何删除 java eclipse 中的编译器优化?

java - 为 JUnit Runner (Eclipse) 设置系统属性以测试 Spring Web App

java - Hibernate session.update/session.delete 不起作用

spring - 如何从 STS Boot Dashboard 中删除不需要的项目

eclipse - src/main/resources和src/main/webapp/resources之间有什么区别?

java - 从 eclipse 项目中删除未使用的 jar