我已从hibernate 3升级到hibernate 4。 但在尝试构建SessionFactory
时配置配置=新配置(); sessionFactory = configuration.configure(“app.cfg.xml”)。buildSessionFactory();
我收到以下异常
guiceFilter失败了 java.util.ServiceConfigurationError:org.hibernate.integrator.spi.Integrator:Provider org.hibernate.search.hcore.impl.HibernateSearchIntegrator无法实例化:java.lang.ClassCastException:无法强制转换org.hibernate.search.hcore.impl .HibernateSearchIntegrator到org.hibernate.integrator.spi.Integrator 在java.util.ServiceLoader.fail(未知来源) at java.util.ServiceLoader.access $ 100(未知来源) at java.util.ServiceLoader $ LazyIterator.next(Unknown Source) at java.util.ServiceLoader $ 1.next(Unknown Source) 在org.hibernate.service.classloading.internal.ClassLoaderServiceImpl.loadJavaServices(ClassLoaderServiceImpl.java:251) 在org.hibernate.integrator.internal.IntegratorServiceImpl。(IntegratorServiceImpl.java:53) 在org.hibernate.service.internal.BootstrapServiceRegistryImpl。(BootstrapServiceRegistryImpl.java:80) 在org.hibernate.service.internal.BootstrapServiceRegistryImpl。(BootstrapServiceRegistryImpl.java:57) 在org.hibernate.service.ServiceRegistryBuilder。(ServiceRegistryBuilder.java:76) 在org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1767) 在com.app.server.data.hibernate.SessionProvider.createSessionFactory(SessionProvider.java:55) 在com.app.server.data.hibernate.HibernateDataSourceConnector.init(HibernateDataSourceConnector.java:39) 在com.eng.server.services.ConfigurationServlet.init(ConfigurationServlet.java:42) 在com.google.inject.servlet.ServletDefinition.init(ServletDefinition.java:117) 在com.google.inject.servlet.ManagedServletPipeline.init(ManagedServletPipeline.java:82) 在com.google.inject.servlet.ManagedFilterPipeline.initPipeline(ManagedFilterPipeline.java:102) 在com.google.inject.servlet.GuiceFilter.init(GuiceFilter.java:172) 在org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97) 在org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) 在org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:593) 在org.mortbay.jetty.servlet.Context.startContext(Context.java:140) at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220) 在org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:513) 在org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448) 在com.google.gwt.dev.shell.jetty.JettyLauncher $ WebAppContextWithReload.doStart(JettyLauncher.java:468) 在org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) 在org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 在org.mortbay.jetty.handler.RequestLogHandler.doStart(RequestLogHandler.java:115) 在org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) 在org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 在org.mortbay.jetty.Server.doStart(Server.java:222) 在org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39) 在com.google.gwt.dev.shell.jetty.JettyLauncher.start(DettyLauncher.java:672) 在com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:509) 在com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:1068) 在com.google.gwt.dev.DevModeBase.run(DevModeBase.java:811) 在com.google.gwt.dev.DevMode.main(DevMode.java:311) 引起:java.lang.ClassCastException:无法将org.hibernate.search.hcore.impl.HibernateSearchIntegrator强制转换为org.hibernate.integrator.spi.Integrator 在java.lang.Class.cast(未知来源) ......还有35个
以下是我项目中的罐子
antlr-2.7.7.jar
antlr.jar
aopalliance.jar
avro-1.5.1.jar
cglib-2.2.jar
commons-beanutils-1.8.2.jar
commons-collections-3.2.jar
commons-configuration-1.7.jar
commons-fileupload-1.2.jar
commons-io-1.3.1.jar
commons-lang-2.6.jar
commons-logging-1.1.1.jar
dom4j-1.6.1.jar
ehcache-1.2.3.jar
gin-2.0.jar
guice-3.0.jar
guice-assistedinject-3.0.jar
guice-multibindings-3.0.jar
guice-servlet-3.0.jar
guice-throwingproviders-3.0.jar
gwt-servlet.jar
hibernate-commons-annotations-4.0.1.Final.jar
hibernate-core-4.1.3.Final.jar
hibernate-entitymanager-4.1.3.Final.jar
hibernate-search-engine-4.1.1.Final.jar
hibernate-search-orm-4.1.1.Final.jar
hibernate-validator-4.0.2.GA.jar
jackson-core-asl-1.9.2.jar
jackson-mapper-asl-1.9.2.jar
javassist-3.4.GA.jar
javax.inject.jar
javax.persistence-2.0.0.jar
jboss-logging-3.1.0.GA.jar
jta-1.1.jar
log4j-1.2.15.jar
lucene-core-3.5.0.jar
mvp4g-1.4.0.jar
mysql-connector-java-5.1.18-bin.jar
paranamer-2.3.jar
slf4j-api-1.6.1.jar
slf4j-jcl-1.6.0.jar
snappy-java-1.0.1-rc3.jar
依赖关系是正确的还是我缺少什么?
答案 0 :(得分:1)
org.hibernate.search.hcore.impl.HibernateSearchIntegrator 实现了Hibernate ORM的 org.hibernate.integrator.spi.Integrator v.4.1.3.Final
所以既然你的依赖关系看起来很完美,唯一的解释是你有一些重复的类定义。
我建议使用JBoss Tattletale扫描您的应用程序,这是一个漂亮的命令行工具,可以探索您的jar以查找重复项。
例如,您似乎有一个重复的 antlr 。