我在pom.xml
中定义了依赖项<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>3.3.0.ga</version>
</dependency>
我在 C:/User/.m2/repository/org/hibernate/hibernate-commons-annotations/3.3.0.ga
中有上述jar我在hibernate.cfg.xml中配置了会话工厂和数据源,并尝试在我的main方法中构建配置:
Configuration configuration = new Configuration().configure();
StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties());
SessionFactory sessionFactory = configuration.buildSessionFactory(builder.build());
Session session = sessionFactory.openSession();
我明白了:
Exception in thread "main" java.lang.NoClassDefFoundError:
org/hibernate/annotations/common/reflection/MetadataProvider
我已经尝试在我的Build Path和WEB-INF / lib中直接添加hibernate-commons-annotion jar,但是没有运气
这是以相同的方式设置并在我构建的另一个应用程序上正常运行,这不需要导入的注释jar。 有什么想法吗?
答案 0 :(得分:14)
显然3.3.0.ga是一个'错误',不得不更新依赖使用3.2.0.Final
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>3.2.0.Final</version>
</dependency>