2010-10-29 5 views
7

Creé un proyecto con maven2 en eclipse. Después añadí la dependencia de hibernación-anotaciones, yo estaba tratando de crear una clase usando Hibernate anotaciones (@Entity, @table ...), pero me estaba dando este error:¿Por qué tengo que cambiar el cumplimiento del proyecto a 1.5?

cumplimiento Cambio proyecto y JRE a 1.5

Lo arreglé, pero no puedo entender por qué lo requiere siempre que mi jdk sea 1.6.

¡Gracias de antemano!

Respuesta

11

Comprueba que las configuraciones para el complemento del compilador maven también estén configuradas en 1.5 o 1.6. Si no me equivoco, maven 2 tiene el valor predeterminado de 1.4.

Algo como esto:

  <plugin> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>2.3.1</version> 
       <configuration> 
        <source>1.5</source> 
        <target>1.5</target> 
       </configuration> 
      </plugin> 
+0

muy bueno. ¡Gracias! – artaxerxe

-1

Añadir las siguientes líneas al POM:

<properties> 
     <java.version>1.6</java.version> 
    </properties> 

Editar: Ah, muy mal, acabo de ver que esas son las propiedades personalizadas ... Won' t trabajo.

+2

Whaaaaat? ¿De dónde viene esto? ¿Y qué se supone que debe hacer esto? –

+0

¡mala respuesta! no funciona! – artaxerxe

9

Mientras javamonkey79's solution es la forma estándar de hacerlo, también hay una solución basada en la propiedad, pero no es the one fgysin suggests:

<properties> 
    <maven.compiler.source>1.6</maven.compiler.source> 
    <maven.compiler.target>1.6</maven.compiler.target> 
</properties> 

Referencia (Maven plugin del compilador):

BTW, la razón es que el maven compiler plugin crea una llamada de línea de comando a javac en la que especifica la versión de origen y destino explícitamente (anulando las configuraciones predeterminadas de javac). Y las versiones anteriores del complemento del compilador tenían sus propios valores predeterminados establecidos en 1.3. Sin embargo, a partir de la versión de complemento 2.3, 1.5 is the default source and target version.

+2

Establecer el nivel de compilador se está convirtiendo en uno de los memes de SO;) (+1) –

+0

realmente buen consejo! – artaxerxe

Cuestiones relacionadas