Yo uso la primavera de pruebas junit, pero me sale este mensaje de error en todas las pruebas, desde que he actualizado mi Hibernate Search, Hibernate y Springframework. En pom.xml he incluido común.anotaciones de Hibernate y también se puede encontrar en mi biblioteca (maven de dependencia), que debería haber sido incluido en el classpath. Pero parece que mis pruebas no pueden todavía encontrar la clase.

Aquí es el pom.xml config:

<dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>4.3.5.Final</version>

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

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-search</artifactId>
        <version>5.0.0.Alpha3</version>
    </dependency>


    <dependency>
        <groupId>org.apache.lucene</groupId>
        <artifactId>lucene-queryparser</artifactId>
        <version>4.7.2</version>
    </dependency>

Aquí está el mensaje de error:

Caused by: java.lang.NoClassDefFoundError: org/hibernate/annotations/common/reflection/ClassLoadingException
    at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1402)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1844)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:843)
    at org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:397)
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:842)
    at org.hibernate.jpa.HibernatePersistenceProvider.createContainerEntityManagerFactory(HibernatePersistenceProvider.java:152)
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:336)
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:318)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1612)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1549)
    ... 40 more
Caused by: java.lang.ClassNotFoundException: org.hibernate.annotations.common.reflection.ClassLoadingException
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 51 more
Limpiar y refrescar su aplicación. si el problema persiste optar por la versión correcta de anotaciones frasco.
Gracias! Voy a probarlo ahora mismo.
¿cuál es el alcance de maven de la dependencia
Hola Vinay, he añadido algunas líneas de mi pom.xml justo ahora, que están relacionadas con la cuestión.
Es perfectamente legal para publicar la solución que encontró como respuesta, y la eligió como la correcta después de que el «par de días para esperar» restricción.

OriginalEl autor Manuela | 2014-05-06

1 Comentario

  1. 8

    Problema resuelto!

    Acabo de añadir los siguientes códigos para mi pom.xml:

    <dependency>
            <groupId>org.hibernate.common</groupId>
            <artifactId>hibernate-commons-annotations</artifactId>
            <version>4.0.4.Final</version>
        </dependency>

    Y yo tenía que escribir «la exclusión de hibernación commons anotaciones» en hibernate-core y hibernate-entitymanager por lo que la última versión de común anotación puede ser descargado (de lo contrario, se utiliza el integrado mayores de la versión 4.0.1 y no puede contener esta clase).

    OriginalEl autor Manuela

Dejar respuesta

Please enter your comment!
Please enter your name here