MySQL Hibernate mit Java 1.6

Andre_Stein

Mitglied
Hi an alle,

ich arbeite mich gerade (mit java 1.6) in Hibernate ein. Ich habe einige Publikationen zu Hibernate gefunden, die ich akribisch durcharbeite. Die Dokus sind meist schon etwas älter und nutzen java 1.5. Wenn ich die Beispiele in 1.6 nachbaue bekomme ich von Eclipse die Fehlermeldung, das Annotations nur mit JRE 1.5 laufen. Ich habe alle möglichen Libraries gefunden und ausprobiert, aber mein Fehler bleibt.

Kann mir jemand die Libraries nennen, die Hibernate für java 1.6 braucht oder einen Hinweis geben, was es sonst sein könnte?

Für den Fall, dass es an etwas anderem Liegen könnte, hier kurz der Code:
Java:
package dbobjects;

import java.sql.Date;
import javax.*;
import org.hibernate.annotations.*;
import org.hibernate.*;


@Entity 
@Table(name = "Parameter_Head")
public class Parameter_Head {

	private Long id; 
	private Boolean valid; 
	private Date valid_from; 
	private Date valid_to; 
	private Long id_creator; 
	private Date createdate; 
	private Long id_modifier; 
	private Date modificationdate; 
	private String name1; 
	private String name2; 
		
	public Parameter_Head () {	
	}
	
	@Id
	@GeneratedValue(strategie = GenerationType.Auto)
	public Long getid() {
		return id;
	}

	public Long setid(Long anId) {
		this.id = anId;
	}
		
}

Die genaue Fehlermeldung lautet:
Syntax Error, annotations are only available if source level is 1.5

Könnte die Ursache auch eine ganz andere sein? Muss es eine Configuration-Datei geben, bevor Eclipse die Annotations verarbeiten kann?

Kennt jemand eine Doku/Tutorial zu Hibernate, das sich auf java 1.6 bezieht?

Gruß Andre
 
Hi,

die Ursache könnte auch eine Einstellung bei Eclipse sein:

Guck mal unter: Preferences -> Java -> Compiler -> Compiler compliance Level

Da kannst du einstellen zu welcher Java-Version der Quellcode kompatibel sein soll.
 
Hallo gman,

Danke für deine Antwort.
Ich habe ein Testprojekt angelegt, in das ich den Code aus dem Buch kopiert habe, nach dem ich arbeite. Dort bekam ich die selbe Fehlermeldung. Eclipse schlug als Lösung vor, auf 1.5 zu wechseln, was ich einfach mal für dieses Testprojekt gemacht habe. Die Einstellungen unter Compiler Compliance Level stehen nun auf 1.5. und die Fehlermeldungen sind weg.
Aber genau das ist es, was ich nicht will. Ich wollte mit der neusten Java-Version arbeiten. Mit 1.6.
Die 6'er Version ist seit ein paar Jahren draußen. Immerhin gibt es bereits 20 Updates. Da muss es doch möglich sein mit Hibernate und Java 6 ein Projekt hochzuziehen.

Kennst du irgendwelche Quellen, die ich nach Hinweisen durchsuchen kann?

Gruß Andre
 
Klingt jetzt evtl. bisschen blöd, aber du hast auch ein JDK von 1.6 installiert und dieses wird auch von Eclipse erkannt?
 
Hm,

stand der Compliance-Level denn vorher auch schon auf 1.6? Weil eigentlich müssten die
Annotation ab Version 1.5 (und damit auch unter 1.6) bekannt sein. Ich vermute auch
das die Einrichtung des JDKs hier irgendwie falsch ist.
 
Hallo gman, hallo mvitz,

jetzt wird es ein wenig kurios.

Als ich Eclipse bei meinem Testprojekt sagte, es soll die Einstellungen auf 1.5 stellen, wurden die Properties des Projekts wie folgt verändert:

Properties/Java Compiler/
Enable Project specific Settings = TRUE
JDK Compilance/Compiler compilance level = 1.5
Use default compilance level = TRUE


Die Fehlermeldungen in Eclipse verschwanden und alles sieht gut aus. Das Sonderbare ist aber, dass ich nur das JRE1.5 installiert habe. Nicht das JDK1.5
Alle anderen Projekte haben JDK1.6 in den Projekt-Properties stehen.

Da ich mit gman übereinstimme in der Ansicht das die Annotations AB 1.5 laufen, muss es etwas anderes sein. Fehlt mir vielleicht ein Plugin bei Eclipse, damit Eclipse die richtigen Schlüsse zieht?

Gruß Andre
 
Zuletzt bearbeitet:
MIt Eclipse & Hibernate ist alles in Ordnung, das Problem bist du 😀

Die Meldung das Annos erst ab 1.5 zur Verfügung stehen bedeutet, dass das Projekt auf Java 1.4 eingestellt war.
Eclipse bringt seinen egienen Compiler mit, braucht nur eine JRE zum starten, mehr nicht.
Wenn du mit Java 6 (1.6) arbeiten willst, empfehle ich dir auf jedenfall das JDK 1.6 zu installieren.
 
Hallo maki,

auf meinem Rechner war jdk 1.6 Update 20 installiert und als Standard eingestellt. Alle Projekte zeigten mit an, dass sie mit 1.6 arbeiten. Aber dein Hinweis, dass Eclipse ein eigenes jdk 1.4 mitbringt, hat mich doch stutzig gemacht. Ich habe also das neueste JDK (1.6 Update 21) drüber installiert und was soll ich sagen..., ich konnte plötzlich in meinen Hibernateprojekten das JDK 1.6 einstellen ohne das ich mit Fehlermeldungen zugeschmissen wurde. :toll:

Danke dir und gman und mvitz

Gruß Andre
 

Neue Themen


Zurück
Oben