У меня есть приложение, которое представляет собой maven. Когда я делаю
mvn package -D maven.test.skip=true
он создает несколько банок в папке перехода / цели. Он пишет во время упаковки, что postgresql включен:
[INFO] Including postgresql:postgresql:jar:9.1-901.jdbc4 in the shaded jar.
Моя версия postgresql - 9.1-19, поэтому версия драйвера в порядке. я проверил это.
то я запускаю одну из банок с конфигурационными файлами, я полагаю, что это правильное имя базы данных, учетные данные и URL-адреса. и я получаю:
WARNING: com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask@72337297 -- Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (30). Last acquisition attempt
exception:
java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getDriver(DriverManager.java:315)
at com.mchange.v2.c3p0.DriverManagerDataSource.driver(DriverManagerDataSource.java:240)
at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:146)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:195)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:184)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:200)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1086)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1073)
at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:44)
at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1810)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:648)
Утверждается, что эта проблема связана с неправильным URL-адресом подключения или отсутствием драйвера. Я настроил в postgresql_hibernate.xml:
<property name="hibernate.dialect">
org.hibernate.dialect.PostgreSQLDialect
</property>
<property name="hibernate.connection.driver_class">
org.postgresql.Driver
</property>
Мне кажется, что компиляция maven не добавляет драйверы postgresql, но включены состояния maven. Я новичок в maven, но я не знаю, как проверить или заставить включить драйверы в проекте. Или, может быть, что-то еще для новичков здесь, я пропал без вести. Когда я распаковывал jar, который я выполняю, он включает org / postgresql.Driver.class.
== edit jdbc url: jdbc:postgresql://localhost:5432/dbname