2016-06-26 30 views
1

Ich machte eine einfache Java EE-App, und ich habe ein Problem mit der Verbindung zur Datenbank. In Eclipse funktioniert alles gut, aber wenn ich das gleiche versuche, treten intellij Fehler auf.java.lang.ClassNotFoundException: com.mchange.v2.c3p0.ComboPooledDataSource in IntelliJ, während es in Eclipse funktioniert

package db; 

import com.mchange.v2.c3p0.ComboPooledDataSource; 

import java.beans.PropertyVetoException; 
import java.sql.Connection; 
import java.sql.SQLException; 

public class DbUtil { 
private static DbUtil dbUtil; 
private ComboPooledDataSource connectionPool; 

private DbUtil() throws PropertyVetoException { 
    connectionPool = new ComboPooledDataSource(); 
    connectionPool.setDriverClass("com.mysql.jdbc.Driver"); 
    connectionPool.setJdbcUrl("jdbc:mysql://localhost:3306/world"); 
    connectionPool.setUser("root"); 
    connectionPool.setPassword("root"); 

    connectionPool.setInitialPoolSize(5); 
    connectionPool.setMinPoolSize(5); 
    connectionPool.setMaxPoolSize(20); 
    connectionPool.setAcquireIncrement(5); 
    connectionPool.setMaxIdleTime(3600); 
} 

public Connection getConnection() throws SQLException { 
    return connectionPool.getConnection(); 
} 

public void close() { 
    connectionPool.close(); 
} 

public static DbUtil getInstance() { 
    if (dbUtil == null) { 
     try { 
      dbUtil = new DbUtil(); 
     } catch (PropertyVetoException e) { 
      e.printStackTrace(); 
     } 
    } 
    return dbUtil; 
} 
    } 

In Projektstruktur -> Bibliotheken Ich habe: image

Und die Fehler sind:

java.lang.NoClassDefFoundError: com/mchange/v2/c3p0/ComboPooledDataSource 
java.lang.ClassNotFoundException: com.mchange.v2.c3p0.ComboPooledDataSource 
+0

, wenn diese „Bibliotheken“ repräsentieren JAR-Dateien in dem Bild, zumindest müssen Sie auch das Glas für mchange-commons-Java-Version 0.2.11 oder höher pom Abhängigkeiten . –

Antwort

0

Es ist eine lange Zeit gewesen ist, aber ich vor dem gleichen Problem, und diese Lösung gearbeitet .

In project_name/web/WEB-INF/ neuen Ordner namens lib, kopieren .jars c3p0-0.9.5.2, c3p0-oracle-thin-extras-0.9.5.2, mchange-commons-java-0.2.11 dann in Projektansicht wählen lib Ordner und schließlich Add as liblary....

0

Fügen Sie einfach diese Datei

<dependency> 
     <groupId>com.google.code.maven-play-plugin.com.mchange</groupId> 
     <artifactId>c3p0-oracle-thin-extras</artifactId> 
     <version>0.9.5</version> 
    </dependency> 

    <dependency> 
     <groupId>com.mchange</groupId> 
     <artifactId>mchange-commons-java</artifactId> 
     <version>0.2.11</version> 
    </dependency> 

    <dependency> 
     <groupId>com.mchange</groupId> 
     <artifactId>c3p0</artifactId> 
     <version>0.9.5.2</version> 
    </dependency>