Tôi đang cố nâng cấp lên Hibernate 3.5.3-FINAL.Hibernate 3.5.x: NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval
Khi chạy thử nghiệm đơn vị của tôi, bây giờ tôi nhận được ngoại lệ sau đây:
java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z
at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1837)
classpath của tôi chứa JAR sau của:
Từ quận Hibernate:
antlr-2.7.6.jar
commons-collections-3.1.jar
dom4j-1.6.1.jar
javassist-3.9.0.GA.jar
jta-1.1.jar
slf4j-api-1.5.8.jar
cglib-2.2.jar
hibernate-jpa-2.0-api-1.0.0.Final.jar
hibernate3.jar
Các lọ khác:
blazeds-common-3.2.0.3978.jar
blazeds-core-3.2.0.3978.jar
blazeds-opt-3.2.0.3978.jar
blazeds-proxy-3.2.0.3978.jar
blazeds-remoting-3.2.0.3978.jar
commons-lang-2.3.jar
dbunit-2.4.7.jar
ejb3-persistence.jar // Note, I've tried excluding this, but I get different errors
guava-r05.jar
hsqldb-1.8.0.7.jar
junit-4.1.jar
lambdaj-2.0-with-dependencies.jar
log4j-1.2.14.jar
mockito-all-1.8.0.jar
persistence-api-1.0.jar
spring-security-core-2.0.0.jar
spring.jar
sqljdbc.jar
Tôi đã nghiên cứu này, và tôi find answers đó nêu webserver tôi phải JPA2 Compliant:
Unfortunately if your app server is not JPA 2 compliant, you are likely to be out of luck
Dự án này là một thư viện, không phải là một dự án máy chủ web. (Mặc dù nó cuối cùng được triển khai cho một máy chủ web, tôi chỉ đơn giản là chạy thử nghiệm đơn vị ở đây)
Tôi đang thiếu gì?
<indulgent_rant>
Là một sidenote, nó rất bực bội mà mỗi khi tôi nâng cấp Hibernate, tôi thấy mình chi tiêu giờ nghiên cứu lọ mâu thuẫn cho MethodNotFoundException
hoặc ClassNotFoundException
's. Phải có một cách đơn giản hơn?
Tôi nghĩ chắc chắn rằng với thông báo họ đã hợp nhất các mô-đun trở lại một dự án cốt lõi, những xung đột đó sẽ biến mất?
</indulgent_rant>
Không phải là sự hiện diện của cả xung đột 3.5.3 và hibernate-jpa-2.0-api hibernate-jpa-2.0-api, vì cả hai đều chứa lớp OneToMany? – acalypso
Chúng không xung đột, vì chúng có các không gian tên khác nhau. Có javax.persistence.OneToMany và một là org.hibernate.mapping.OneToMany. –
Tôi không biết điều gì ... nhưng làm việc xD! – wrivas