java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver, несмотря на тот факт, что он находится в зависимостях файла gradle.build - PullRequest
0 голосов
/ 15 октября 2019

Я прочитал топ-10-15 вопросов с ответами на следующий запрос https://stackoverflow.com/search?q=com.microsoft.sqlserver.jdbc.SQLServerDriver%22
Однако я до сих пор не понимаю, почему это не работает.
Обычные шаги длярешить эту проблему:

  1. Убедитесь, что файл jar добавлен в качестве зависимости в ваш инструмент управления сборкой / зависимостями (Ant / Maven (pom.xml) /Gradle (gralde.build)) Да, это в моем случае:

    dependencies {
        compile group: 'com.microsoft.sqlserver', name: 'mssql-jdbc', version: '7.4.0.jre8'
        testCompile group: 'com.microsoft.sqlserver', name: 'mssql-jdbc', version: '7.4.0.jre8'
    }
    

    в build.gradle файл и сборка GradleКоманда работает без исключений.

  2. Альтернативным решением является загрузка файла jar вручную из https://docs.microsoft.com/en-us/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-ver15 и добавление его в путь к классам. Это решение нежелательно, я не хочу делать что-то вручную, что должно быть сделано с помощью инструмента сборки.

Поэтому вопрос в том, почему я получаю ошибку "java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver" , и я не могу увидеть эту банку на вкладке зависимостей enter image description here

несмотря натот факт, что jar упоминается в моем файле build.gradle в разделе зависимостей как зависимость времени компиляции и как зависимость времени тестирования: enter image description here

К вашему сведению: в моем коде это называется:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

1 Ответ

1 голос
/ 15 октября 2019

Похоже, что IntelliJ не импортировал добавление этих зависимостей. Обычно это означает, что автоматический импорт отключен.

Вы можете повторно импортировать файл Gradle, нажав кнопку повторного импорта на вкладке Gradle IDEA. Вы можете включить автоматический импорт, нажав кнопку «Параметры Gradle» на вкладке «Gradle» и включив «Автоматический импорт этого проекта при изменениях в файлах сценариев сборки».

В отдельном отчете не нужно объявлятьtestCompile если вы также объявляете зависимость как compile.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...