Mit Jersey (die Java REST Framework) in Verbindung mit Hibernate erfordert einige Optimierungen von der Maven pom.xml Datei. Das Problem ist, dass Hibernate ASM 1.5.3
verwendet, das nicht kompatibel mit ASM 3.1
ist, das von Jersey verwendet wird.
Was Sie tun müssen, ist, einige transitive Abhängigkeiten von Hibernate ausschließen:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.6.ga</version>
<exclusions>
<exclusion>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
</exclusion>
<exclusion>
<groupId>asm</groupId>
<artifactId>asm-attrs</artifactId>
</exclusion>
<exclusion>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
</exclusion>
</exclusions>
</dependency>
Dann müssen Sie die richtige Version von ASM sind:
<dependency>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
<version>3.1</version>
</dependency>
Schließlich müssen Sie enthält eine nodep-Version des CGLib, der Klassen aus ASM Version 1.5.3 neu packt:
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib-nodep</artifactId>
<version>2.1_3</version>
</dependency>
Quelle: http://blog.idm.fr/2009/04/jersey-hibernate-conflict.html
Haben Sie jemals eine Lösung für diese finden? Ich stoße jetzt genau darauf. Ich verwende Hibernate 3.2 Core, Annotations und Entity Manager. Hibernate stirbt, wenn ich versuche, JAX-RS-Bibliotheken hinzuzufügen. Vielen Dank. – kmehta