2015-07-14 2 views
0

У меня есть мой сервер Spring-Boot, хорошо работающий с помощью «стартер-родитель». Проблема в том, что я предпочел бы не использовать весенний пом в качестве родителя, если это вообще возможно. Когда я только включать пружинные загрузки-зависимостей ПОМ, хотя (как описано here), я в конечном итоге с водителем не загружен:Spring Boot без родителя-родителя pom не загружается драйвер jdbc

18:14:26.127 [localhost-startStop-1] WARN o.a.t.jdbc.pool.PooledConnection - Not loading a JDBC driver as driverClassName property is null. 
18:14:26.147 [localhost-startStop-1] ERROR o.a.tomcat.jdbc.pool.ConnectionPool - Unable to create initial connections of pool. 
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost/mydb 
    at java.sql.DriverManager.getConnection(DriverManager.java:689) ~[na:1.8.0_45] 
    at java.sql.DriverManager.getConnection(DriverManager.java:208) ~[na:1.8.0_45] 
    at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:305) ~[tomcat-jdbc-8.0.23.jar:na] 
    at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:200) ~[tomcat-jdbc-8.0.23.jar:na] 
    ... 

Я уверен, что это имеет отношение к водителю не быть загружен с помощью DriverManager & бит ServiceLoader, но я не уверен, как заставить это произойти. Любые предложения будут высоко оценены.

FWIW: Если я пытаюсь использовать 'Class.forName()' драйвер jdbc MySQL, я на самом деле получаю «NoClassDefFoundError», что вызывает недоумение, поскольку mysql-коннектор определенно находится в моем pom. Несколько загрузчиков классов или что-то еще?

+0

Добавьте свой 'pom.xml'. –

+0

Причина, почему вы предпочитаете не использовать родительский родительский родитель? Любые проблемы, которые он вызывает, легче исправить, а затем проблемы, вызванные его отсутствием. –

+0

У моей компании есть родительский pom, который настраивает несколько плагинов для правильной интеграции с нашей системой сборки. Я мог бы дублировать все это в новом помпе, но я бы предпочел. – pedorro

ответ

0

Я считаю, что моя проблема связана с тем, как maven импортирует и наследует зависимости, предоставляемые родительским помпом моей компании, и те, которые идут с пружинной загрузкой. Я не могу это объяснить, но если я прокомментирую раздел управления зависимостями нашего родительского пом, все, кажется, работает правильно. Это определенно какое-то мистическое поведение в maven, но на данный момент я работаю над разделением аспектов управления зависимостями и конфигурацией плагинов нашего родительского pom. Таким образом, я могу наследовать конфигурацию плагина, а не управление зависимостями.

Спасибо за помощь :)

Смежные вопросы