Immer " java.sql.SQLException: com.mysql.jdbc.Treiber " mit grails run-app (wenn BuildConfig.groovy muss nicht neu kompiliert werden)
Habe ich aktualisiert meine grails-Anwendung von 1.3.9 auf 2.2.3 und dann auf 2.3.3. Ich Lesen Sie die release-und upgrade-Hinweise für 1.3.9->2.2.3 und dann von 2.2.3->2.3.3
Ich bin mit OpenJDK 6
, Jetty 6
- und plugin -jetty 1.1
, MySQL 5.5
und ich habe die connector-Bibliothek unter lib
Nun mein Problem ist, wenn ich grails clean
und dann grails run-app
die Anwendung läuft ohne Probleme aber wenn ich stoppen und laufen grails run-app
wieder bekomme ich einen gigantischen Fehler (siehe hier: http://pastebin.com/36MpXhir)
Fand ich auch, dass ändern etwas wie ein Leerzeichen irgendwo in BuildConfig.groovy
(alles, was macht es neu kompiliert werden) macht die Anwendung normalerweise ausgeführt.
Blick auf den stacktrace die erste Sache, die mich verwirrt ist
[02.12.13 16:13:59.919] [main] pool.ConnectionPool Unable to create initial connections of pool.
java.sql.SQLException: com.mysql.jdbc.Driver
at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:254)
at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:182)
at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:701)
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:635)
at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:486)
at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:144)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:116)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:103)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:127)
at org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy.afterPropertiesSet(LazyConnectionDataSourceProxy.java:162)
Gibt es Verweise auf org.apache.tomcat
obwohl ich mit jetty (und entfernt tomcat von BuildConfig.groovy
).
Hatte noch jemand ein solches problem?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht setzen jar-Dateien im lib-Verzeichnis, wenn Sie in einem öffentlichen Maven-repo. Es ' s far better to download Gläser einmal und halten Sie Sie in einen lokalen cache, und wiederverwenden wie erforderlich.
Den MySQL-Treiber verwendet wird, als auskommentiertes Beispiel in der generierten
BuildConfig.groovy
- nur un-comment it:), möchten Sie vielleicht, um bump up die version auf die neueste, z.B.Ist dies ein guter Ort für die Suche nach Maven Artefakten: http://mvnrepository.com/artifact/mysql/mysql-connector-java
Wenn Sie haben ein Glas, das nicht in ein Maven-repo (z.B. bei shared-code in Ihrem Unternehmen) dann können Sie es in das lib-Verzeichnis, aber es ist nicht automatisch entdeckt. Führen Sie
grails compile --refresh-dependencies
um es zu bekommen, werden dem classpath Hinzugefügt.mavenCentral()
ist unkommentiert aufgeführt und in derrepositories
block, und es ist eine gute Idee, ummavenLocal()
auch (und vormavenCentral()
), damit er überprüft, ob der lokale cache-ersten. Wenn das nicht funktioniert, tun, was die Fehlermeldung schon sagt - ändern Sie den log-level auf warn (log 'warn'
) und sehen, ob die extended-Ausgabe hat mehr Hinweise.