2012-04-16 2 views
1

Я работал над проектом mvc maven весной и на начальной стадии могу преодолеть эту ошибку. в моем сервлет-context.xml, я пытаюсь создать боб «HibernateTransactionManager», который бросает мне этот Errr:Spring MVC Hibernate - путь к сборке неполный

error: "Build path is incomplete. Cannot find class file for org/hibernate/HibernateException" 

как это быть Maven проект, который я добавил следующую зависимость в pom.xml

<!-- Dependency added for spring --> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-web</artifactId> 
     <version>${org.springframework-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-webmvc</artifactId> 
     <version>${org.springframework-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-core</artifactId> 
     <version>${org.springframework-version}</version> 
    </dependency>    


    <!-- Dependency added for Spring Security --> 
    <dependency> 
     <groupId>org.springframework.security</groupId> 
     <artifactId>spring-security-core</artifactId> 
     <version>3.0.5.RELEASE</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.security</groupId> 
     <artifactId>spring-security-config</artifactId> 
     <version>3.0.5.RELEASE</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.security</groupId> 
     <artifactId>spring-security-web</artifactId> 
     <version>3.0.5.RELEASE</version> 
    </dependency> 

    <!-- Dependency added for AOP --> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-aop</artifactId> 
     <version>${org.springframework-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>cglib</groupId> 
     <artifactId>cglib</artifactId> 
     <version>2.2</version> 
    </dependency> 

    <!-- Dependency for Hibernate --> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-orm</artifactId> 
     <version>${org.springframework-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-jdbc</artifactId> 
     <version>${org.springframework-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-core</artifactId> 
     <version>${org.hibernate-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-validator</artifactId> 
     <version>4.2.0.Final</version> 
    </dependency> 
    <dependency> 
     <groupId>mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
     <version>${com.mysql-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>commons-dbcp</groupId> 
     <artifactId>commons-dbcp</artifactId> 
     <version>20030825.184428</version> 
    </dependency> 
    <dependency> 
     <groupId>commons-pool</groupId> 
     <artifactId>commons-pool</artifactId> 
     <version>20030825.183949</version> 
    </dependency> 
    <dependency> 
     <groupId>javassist</groupId> 
     <artifactId>javassist</artifactId> 
     <version>3.12.1.GA</version> 
    </dependency> 

    <!-- Dependency for Http Client --> 
    <dependency> 
    <groupId>org.apache.httpcomponents</groupId> 
    <artifactId>httpclient</artifactId> 
    <version>4.1.1</version> 
    </dependency> 
    <dependency> 
     <groupId>jdom</groupId> 
     <artifactId>jdom</artifactId> 
     <version>1.0</version> 
    </dependency> 
    <dependency> 
    <groupId>rome</groupId> 
    <artifactId>rome</artifactId> 
    <version>0.5</version> 
    </dependency> 

Я даже могу найти все свои классы в своем дереве зависимостей Maven.

Я также попытался извне добавить новый .jar для весенней ормии, но это тоже не сработало. Я пытался очистить сборку и перекомпилировать несколько раз, но это не сработало.

Я бы очень признателен за любые ваши данные.

+0

Может ли это быть связано с [этим вопросом SO] (http://stackoverflow.com/questions/4262186/missing-maven-dependencies-in-eclipse-project)? – Raghuram

ответ

0

Если вы уверены, что maven загрузил баночку спящего режима и доступны в/в файле jar/war, сгенерированном из сборки, проблема может быть следующей.

Иногда Maven не может загрузить полный JAR-файл с сервера, в этих случаях также может возникнуть исключение класса.

Чтобы исправить эту папку .m2 в вашем домашнем каталоге, удалите спящий барабан и сделайте clean install. это загрузит новый набор файлов, и все должно начаться.

вы можете проверить, если файлы были загружены правильно, открыв их в виде архива jar tf jar-file.jar

+0

эй.что вы подразумеваете под чистой установкой? снова установить весь источник springsource или только репозиторий ?? – user1324493

+0

просто репо .. а затем сделать maven чистой установкой 'mvn clean install' –

1

Это моя первая ТАК ответить, поэтому, пожалуйста, медведь со мной. Созданная ошибка: «Не удается найти файл класса для org/hibernate/HibernateException». Предоставленный вами POM перечисляет все зависимости вашего проекта и включает ссылку на банку hibernate-validator.

<dependency> 
<groupId>org.hibernate</groupId> 
<artifactId>hibernate-validator</artifactId> 
<version>4.2.0.Final</version> 
</dependency> 

Если вы извлекаете этот файл jar и просматриваете его содержимое, не может быть найден файл класса с именем HibernateException. Это основная причина ошибки, и вы хранилище, содержащее файл класса HibernateException.

Как вы используете Maven, вы можете увидеть все репозитории, связанные с Hibernate здесь http://mvnrepository.com/artifact/org.hibernate

Я выбрал в качестве основных hibernate-core-4.2.0.Final бы предположить, что имеет большинство из основных требуются файлы класса hibernate. Загрузка и извлечение jar показывает, что здесь существует файл класса HibernateException.

Поэтому, если вы обновите pom.xml с помощью следующей записи

<dependency> 
<groupId>org.hibernate</groupId> 
<artifactId>hibernate-core</artifactId> 
<version>4.2.0.Final</version> 
</dependency> 

Теперь вы должны сделать Maven загрузить хранилище на локальном компьютере, если он не существует, и использовать его для вашего проекта. Если вы выполняете проект с Elcipse, сделайте это, щелкнув правой кнопкой мыши проект-> Run As-> Maven Clean.

Надеюсь, что это поможет.

 Смежные вопросы

  • Нет связанных вопросов^_^