首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hibernate C3P0 - NoClassDefFoundError

Hibernate C3P0 - NoClassDefFoundError
EN

Stack Overflow用户
提问于 2015-07-28 12:19:16
回答 2查看 3.3K关注 0票数 0

当我的Struts应用程序首次在Glassfish上查询时,就会发生这样的错误:

代码语言:javascript
复制
Severe: Initial SessionFactory creation failed.java.lang.NoClassDefFoundError: com/mchange/v2/c3p0/DataSources
Info: 2015-07-28 13:59:17 ERROR HibernateUtil:54 - Initial SessionFactory creation failed
java.lang.NoClassDefFoundError: com/mchange/v2/c3p0/DataSources
    at org.hibernate.connection.C3P0ConnectionProvider.configure(C3P0ConnectionProvider.java:176)
    at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:143)
    at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:84)
    at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:459)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:91)
    at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2833)
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2829)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1840)
    [...]

我试过用这篇文章来解决这个问题,但是仍然会发生同样的错误。

我用来运行这个应用程序的依赖项:

代码语言:javascript
复制
        <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-core</artifactId>
                <version>3.6.3.Final</version>
                <type>jar</type>
        </dependency>
        <!-- Hibernate c3p0 connection pool -->
        <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-c3p0</artifactId>
                <version>3.6.3.Final</version>
        </dependency>
        <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-tools</artifactId>
                <version>3.6.0.CR1</version>
        </dependency>
        <dependency>
                <groupId>com.mchange</groupId>
                <artifactId>mchange-commons-java</artifactId>
                <version>0.2.10</version>
        </dependency>
        <dependency>
                <groupId>c3p0</groupId>
                <artifactId>c3p0-oracle-thin-extras</artifactId>
                <version>0.9.0.2</version>
        </dependency>
        <dependency>
                <groupId>com.mchange AND c3p0</groupId>
                <artifactId>c3p0</artifactId>
                <version>0.9.2.1</version>
        </dependency>

这个应用程序在没有Maven的情况下运行得很好。

谢谢你的帮助!)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-28 13:25:22

问题解决了--我不得不将c3p0-version.jar添加到域/domain1 1/lib下的Glassfish库目录中。

票数 0
EN

Stack Overflow用户

发布于 2015-07-28 14:09:38

在……里面

代码语言:javascript
复制
<dependency>
   <groupId>com.mchange AND c3p0</groupId>
   <artifactId>c3p0</artifactId>
   <version>0.9.2.1</version>
</dependency>

AND c3p0是多余的。

它应该是

代码语言:javascript
复制
<dependency>
   <groupId>com.mchange</groupId>
   <artifactId>c3p0</artifactId>
   <version>0.9.2.1</version>
</dependency>

或者更好的是,使用当前的生产版本。

代码语言:javascript
复制
<dependency>
   <groupId>com.mchange</groupId>
   <artifactId>c3p0</artifactId>
   <version>0.9.5.1</version>
</dependency>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31676143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档