Как добавить jdbc драйвер в eclipse

Обновлено: 07.07.2024

Существует VERY подобный вопрос , но в моем случае у меня нет никаких дубликатов банок в моем пути сборки, поэтому решение не работает для меня. Я искал в google уже пару часов, но ни одно из найденных там решений на самом деле не решило мою проблему. Я создаю веб-сайт с некоторым подключением к базе данных для домашнего задания. Я использую базу данных MySQL, разрабатываемую в Eclipse и работающую на Windows.

Я продолжаю получать java.lang.ClassNotFoundException: com.mysql.jdbc.Driver со следующим кодом:

Когда я запускаю приведенный выше код, я получаю следующий вывод:

Он не проходит мимо строки Class.forName. , и я не могу понять почему! Вот что я сделал:

Каждый раз, когда я пытаюсь использовать сервлет, я получаю одну и ту же ошибку, независимо от того, есть ли у меня jar или нет. Не могли бы вы помочь мне разобраться в этом?

Я хотел бы знать, где я должен установить драйвер MySQL JDBC в Eclipse, чтобы он мог быть обнаружен и использован SQL Explorer. Просто для ясности, если это возможно, я хотел бы скопировать разъем MySQL J куда-нибудь внутрь Eclipse. Кроме того, решение с репозиторием установки Eclipse также было.

Что касается каждой библиотеки "3rd-party" в вкусе файла JAR, который должен использоваться веб-приложением, просто скопируйте/отбросьте физический файл JAR в /WEB-INF/lib веб-приложения . Затем он будет доступен в webapp по умолчанию classpath. Кроме того, Eclipse достаточно умен, чтобы заметить это. Нет необходимости возиться с buildpath. Однако обязательно удалите все ненужные ссылки, которые вы добавили раньше, иначе они могут столкнуться.

Альтернативой является установка его на самом сервере, поместив физический файл JAR в собственную папку /lib сервера. Это необходимо при использовании предоставленного сервером источника данных пула соединений JDBC, который, в свою очередь, нуждается в драйвере MySQL JDBC.

См. также:

Поскольку вы запускаете его в servlet , вам нужно иметь jar, доступный контейнеру сервлета . Вы либо включаете соединитель как часть вашего приложения war , либо помещаете его как часть расширенной библиотеки контейнера сервлета и материала управления источниками данных, если он у него есть. Вторая часть полностью зависит от контейнера, который у вас есть.

Место mysql-разъем-java-5.1.6-bin.jar в папку \Apache Tomcat 6.0.18\lib. Ваша проблема будет решена.

Мое приложение GWT, похоже, не находит mysql-коннектор-java-5.1.22-bin.jar-да. Я использую Google App Engine. Я установил jar в Project->RIghtClick->Properties->Java Build Path->Libraries->mysql-connector-java-5.1.22-bin.jar-да. Я также добавил MySQL JDBC Driver. $CLASSPATH тоже установлен.

Когда я копирую драйвер mysql jdbc в JDK's\jre\lib\ext, он работает отлично. Теперь я хочу использовать jdbc, указав его classpath в переменной окружения. Но после этого моя программа выдает исключение : java.sql.SQLException: не найдено подходящего водителя для jdbc:mysql://localhost/books Как.

Остальные правы в том, что делают драйвер JAR доступным для вашего контейнера сервлета. Мой комментарий был предназначен для того, чтобы предложить вам проверить из командной строки, цел ли сам драйвер.

Вместо пустого main() попробуйте что-то вроде этого, адаптированного из прилагаемой документации:

На моей платформе я бы сделал это:

На вашей платформе вам нужно использовать ; в качестве разделителя путей, как описано здесь и здесь .

Что вы не должны делать (особенно при работе над общим проектом)

Еще одно решение, которое я не рекомендую: скопировать его в папку tomcat/lib . хотя это может сработать, будет трудно управлять зависимостью для общего проекта(например, git).

Хорошее решение 1

Создайте папку vendor . поместите туда всю свою внешнюю библиотеку. затем сопоставьте эту папку как зависимость с вашим проектом.

  1. добавьте свою папку в build path
    1. Project Properties -> Java build path
    2. Libraries - > добавить внешнюю библиотеку lib или любое другое решение для добавления ваших файлов/папок
    1. Project Properties -> Deployment Assembly
    2. Add -> Java Build Path Entries
    3. Теперь вы должны увидеть список библиотек на вашем пути сборки, которые вы можете указать для включения в ваш готовый WAR.
    4. Выберите те, которые вы хотите, и нажмите кнопку Готово.

    Хорошее решение 2

    Используйте maven (или любую другую альтернативу) для управления зависимостями проекта

    Просто выполните следующие действия:

    Это все очень просто, ребята.

    Единственное решение, которое сработало для меня, - это поместить файл .jar под WEB-INF/lib . Надеюсь, это поможет.

    Много раз я сталкивался с этой проблемой, я испытал ClassNotFoundException. если jar не находится в физическом местоположении.

    Поэтому убедитесь, что файл .jar (соединитель mysql) находится в физическом расположении папки WEB-INF lib, и убедитесь, что перезапуск Tomcat выполняется с помощью команды shutdown в cmd. это должно сработать.

    Если проблема все еще сохраняется,

    Очистите свой проект-остановите сервер-наконец попробуйте запустить.

    предполагая, что ваш проект основан на maven, добавьте его в свой POM:

    Сохранить > построить > и снова проверить соединение. Это работает! Ваша фактическая версия разъема mysql java может отличаться.

    Моя проблема была немного другой. Вместо jdbc:oracle:thin:@server:port/service у меня было server:port/service .

    Отсутствовал атрибут jdbc:oracle:thin:@ в url в GlobalNamingResources.Resource. Но я упустил из виду tomcat исключения

    даже если он не используется до запуска приложения.

    Похожие вопросы:

    Возможный Дубликат : MongoDB и Бирт отчетности? Я пытаюсь установить драйвер JDBC в eclipse-в частности, инструмент BIRT в eclipse. Я попытался перейти к добавлению источника данных и нажать кнопку.

    Мне было интересно, может ли кто-нибудь дать мне некоторые инструкции о том, как сделать следующее: Как добавить файл mysql connection JAR в путь сборки Eclipse plugin Как добавить файл connector.

    Как добавить библиотеки JAR в проект WAR в Eclipse, не сталкиваясь с java.lang.ClassNotFoundException или java.lang.NoClassDefFoundError ? Переменная окружения CLASSPATH , похоже, не работает. В.

    Я хотел бы знать, где я должен установить драйвер MySQL JDBC в Eclipse, чтобы он мог быть обнаружен и использован SQL Explorer. Просто для ясности, если это возможно, я хотел бы скопировать разъем.

    Мое приложение GWT, похоже, не находит mysql-коннектор-java-5.1.22-bin.jar-да. Я использую Google App Engine. Я установил jar в Project->RIghtClick->Properties->Java Build.

    Когда я копирую драйвер mysql jdbc в JDK's\jre\lib\ext, он работает отлично. Теперь я хочу использовать jdbc, указав его classpath в переменной окружения. Но после этого моя программа выдает.

    ну, я использую netbeans, так что я новичок в eclipse. Есть ли в eclipse предустановленный драйвер mysql jdbc или мы должны его скачать?Кроме того, как я предполагаю увидеть список библиотек.

    Я получаю ошибку, когда хочу запустить файл .jar, файлу .jar нужен драйвер mysql jdbc, и я должен добавить путь в свой файл mainfest. Но это не работает. Я уверен, что путь правильный. Вот мой файл.

    Я пытался установить драйвер jdbc в android studio, чтобы подключиться к базе данных mysql. Я пытался сделать это двумя способами, которые уже были объяснены в stackoverflow, но они больше не.

    есть очень похожий вопрос для моего, но в моем случае у меня нет дубликатов банок в моем пути сборки, поэтому решение не работает для меня. Я искал google в течение нескольких часов, но ни одно из решений, которые я нашел там, на самом деле не решает мою проблему. Я создаю веб-сайт с некоторым подключением к базе данных для домашней работы. Я использую базу данных MySQL, разрабатываемую в Eclipse и работающую в Windows.

    Я java.lang.ClassNotFoundException: com.mysql.jdbc.Driver со следующими код:

    когда я запускаю вышеуказанный код, я получаю следующий вывод:

    он не проходит мимо Class.forName. line и я не могу понять, почему! Вот что я сделал:--9-->

    1. загрузить mysql-connector.
    2. поместите его в мою папку MySQL C:Program FilesMySQLmysql-connector-java-5.1.12mysql-connector-java-5.1.12-bin.jar .
    3. открыть свойства проекта в Eclipse.
    4. добавить внешние Jar в мой путь сборки и я выбрал mysql-connector-java-5.1.12-bin.jar .

    каждый раз, когда я попытка использовать сервлет я получаю ту же ошибку, независимо от того, есть ли у меня jar там или нет. Не могли бы вы помочь мне разобраться в этом?

    Что касается каждой" сторонней " библиотеки во вкусе файла JAR, который должен использоваться webapp, просто скопируйте/удалите физический файл JAR в webapp /WEB-INF/lib . Затем он будет доступен в пути к классам по умолчанию webapp. Кроме того, Eclipse достаточно умен, чтобы заметить это. Нет необходимости возиться с buildpath. Однако обязательно удалите все ненужные ссылки, добавленные ранее, иначе они могут столкнуться.

    альтернативой является установка его на сервере, путем удаления физического файла jar в собственном /lib папка. Это необходимо, когда вы используете предоставленный сервером источник данных пула соединений JDBC, который, в свою очередь, нуждается в драйвере JDBC MySQL.

    Так как вы запускаете его в servlet , вам нужно иметь банку, доступную сервлет контейнер. Вы либо включаете соединитель как часть своего приложения war или поместите его как часть расширенной библиотеки контейнера сервлета и материала управления источником данных, если он есть. Вторая часть полностью зависит от контейнера, который у вас есть.

    остальные правы насчет фляги драйвера на ваш сервлет контейнер. Мой комментарий должен был предложить вам проверить из командной строки, является ли сам драйвер неповрежденным.

    а не пустой main() попробуйте что-то вроде этого, взято из документации входит:

    на моей платформе я бы сделал это:

    на вашей платформе вам нужно использовать ; как разделитель пути, как обсуждалось здесь и здесь.

    поместите mysql-connector-java-5.1.6-bin.jar в папку \Apache Tomcat 6.0.18\lib. Ваша проблема будет решена.

    просто выполните следующие действия:

    Это все очень просто ребята.

    то, что вы не должны делать (особенно при работе над общим проектом)

    другое решение, которое я не рекомендую:чтобы скопировать его в папку tomcat/lib. хотя это может сработать, будет трудно управлять зависимость для общего проекта (например, git).

    хорошее решение, 1

    создать . положите туда всю свою внешнюю свободу. затем сопоставьте эту папку как зависимость с вашим проектом. в eclipse вам нужно

    1. добавить папку в build path
      1. Project Properties -> Java build path
      2. Libraries -> добавить внешний lib или любое другое решение для добавления файлов / папок
      1. Project Properties -> Deployment Assembly
      2. Add -> Java Build Path Entries
      3. теперь вы должны увидеть список библиотек на пути сборки, которые вы можете указать для включения в завершенную войну.
      4. выберите те, которые вы хотите, и нажмите Готово.

      хорошее решение 2

      использовать maven (или любого другого) для управления зависимость проекта

      Если проблема все еще сохраняется,

      очистите свой проект-остановите сервер-наконец попробуйте запустить.

      много раз я сталкивался с этой проблемой, я испытал ClassNotFoundException. если jar нет в физическом месте.

      поэтому убедитесь .файл jar (MySQL connector) в физическом расположении папки lib WEB-INF. и убедитесь, что перезапуск Tomcat с помощью команды shutdown в cmd. это должно сработать.

      единственное решение, которое сработало для меня, - это положить .файл jar под WEB-INF/lib . Надеюсь, это поможет.

      предполагая, что ваш проект основан на maven, добавьте его в свой POM:

      сохранить > построить > и снова протестировать соединение. Работает! Фактическая версия MySQL java connector может отличаться.

      Есть ОЧЕНЬ похожий вопрос к моему, но в моем случае у меня нет дубликатов jar в моем пути сборки, поэтому решение не работает для меня. Я искал в Google пару часов, но ни одно из найденных там решений не решило мою проблему. Я создаю веб-сайт с возможностью подключения к базе данных для домашней работы. Я использую базу данных MySQL, разрабатываю в Eclipse и работаю в Windows.

      Я продолжаю получать Java.lang.ClassNotFoundException: com.mysql.jdbc.Driver со следующим кодом:

      Когда я запускаю приведенный выше код, я получаю следующий вывод:

      Он не проходит через строку Class.forName. , и я не могу понять, почему! Вот что я сделал:

      Каждый раз, когда я пытаюсь использовать сервлет, я получаю одну и ту же ошибку, независимо от того, есть ли у меня банка или нет. Не могли бы вы помочь мне понять это?

      Что касается каждой "сторонней" библиотеки в виде файла JAR, который должен использоваться веб-приложением, просто скопируйте/удалите физический файл JAR в /WEB-INF/lib веб-приложения. Затем он будет доступен в пути к классам веб-приложения по умолчанию. Кроме того, Eclipse достаточно умен, чтобы заметить это. Не нужно хлопотать с buildpath. Однако обязательно удалите все ненужные ссылки, которые вы добавили ранее, иначе это может привести к конфликту.

      Альтернативный вариант - установить его на самом сервере, поместив физический файл JAR в собственную папку /lib сервера. Это требуется, когда вы используете предоставленный сервером источник данных пула соединений JDBC, который, в свою очередь, нуждается в драйвере JDBC MySQL.

      Смотрите также:

      Поскольку вы запускаете его в servlet , вам нужно иметь доступ к jar-контейнеру сервлет . Вы или включаете соединитель как часть вашего приложения war , или помещаете его как часть расширенной библиотеки контейнера сервлетов и управления ресурсами данных, если таковой имеется. Вторая часть полностью зависит от контейнера, который у вас есть.

      Поместите mysql-connector-Java-5.1.6-bin.jar в папку\Apache Tomcat 6.0.18\lib. Ваша проблема будет решена.

      Другие правы в том, чтобы сделать JAR-драйвер доступным для вашего контейнера сервлета. Мой комментарий предназначался для того, чтобы предложить вам из командной строки проверить, не поврежден ли сам драйвер.

      Вместо пустой main() , попробуйте что-то вроде этого, адаптированное из прилагаемой документации:

      На моей платформе я бы сделал это:

      На вашей платформе вам нужно использовать ; в качестве разделителя пути, как обсуждалось здесь и здесь .

      Просто следуйте этим шагам:

      Это все очень просто, ребята.

      Что вы не должны делать (особенно при работе над общим проектом)

      Другое решение, которое я НЕ рекомендую: скопировать его в папку Tomcat/lib. хотя это может сработать, будет сложно управлять зависимостями для общего проекта (например, git).

      Хорошее решение 1

      Создайте папку vendor . положи туда всю свою внешнюю библиотеку. затем сопоставьте эту папку с зависимостью от вашего проекта. в Eclipse вам нужно

      1. добавьте вашу папку в build path
        1. Project Properties -> Java build path
        2. Libraries -> добавить внешнюю библиотеку или любое другое решение для добавления ваших файлов/папок
        1. Project Properties -> Deployment Assembly
        2. Add -> Java Build Path Entries
        3. Теперь вы должны увидеть список библиотек в вашем пути сборки, который вы можете указать для включения в готовую WAR.
        4. Выберите те, которые вы хотите, и нажмите Finish.

        Хорошее решение 2

        Используйте maven (или любую другую альтернативу) для управления зависимостями проекта

        Много раз я сталкивался с этой проблемой, я испытывал ClassNotFoundException . если jar не находится в физическом месте.

        Поэтому убедитесь, что файл .jar (соединитель mysql) находится в физическом расположении папки lib WEB-INF. и убедитесь, что перезапустите Tomcat с помощью команды shutdown в cmd . это должно работать.

        предполагая, что ваш проект основан на maven, добавьте его в свой POM:

        Сохранить> Построить> и снова протестировать соединение. Оно работает! Фактическая версия Java-коннектора mysql может отличаться.

        Моя проблема была немного другой. Вместо jdbc:Oracle:thin:@server:port/service у меня это было server:port/service .

        Отсутствовал jdbc:Oracle:thin:@ в атрибуте url в GlobalNamingResources.Resource. Но я упустил из виду исключение Tomcat

        Если проблема все еще сохраняется,

        Есть очень похожий вопрос для моего, но в моем случае у меня нет дубликатов банок в моем пути сборки, поэтому решение для меня не работает, Я искал google в течение нескольких часов, но ни одно из решений, которые я нашел там, фактически не разрешает мою проблему. Я создаю веб-сайт с некоторыми подключениями к базе данных для домашней работы. Я использую базу данных MySQL, развивающуюся в Eclipse и работающую в Windows.

        Я продолжаю получать java.lang.ClassNotFoundException: com.mysql.jdbc.Driver со следующим кодом:

        Когда я запускаю приведенный выше код, я получаю следующий вывод:

        Он не проходит мимо строки Class.forName. , и я не могу понять, почему! Вот что я сделал:

        • Загрузите mysql-коннектор.
        • Поместите его в мою папку MySQL C:\Program Files\MySQL\mysql-connector-java-5.1.12\mysql-connector-java-5.1.12-bin.jar .
        • Открыл свойства проекта в Eclipse.
        • Добавить внешнюю банку в мой путь сборки, и я выбрал mysql-connector-java-5.1.12-bin.jar .

        Каждый раз, когда я пытаюсь использовать сервлет, я получаю ту же ошибку, независимо от того, есть ли у меня банка или нет. Не могли бы вы помочь мне понять это?

        ОТВЕТЫ

        Ответ 1

        Как для каждой библиотеки "сторонних разработчиков" в стиле JAR файла, который должен использоваться webapp, просто скопируйте/опустите файл физического JAR в webapp /WEB-INF/lib . Затем он будет доступен в classpath по умолчанию для webapp. Кроме того, Eclipse достаточно умен, чтобы заметить это. Не нужно беспокоиться о пути построения. Однако не забудьте удалить все ненужные ссылки, добавленные ранее, иначе они могут столкнуться.

        Альтернативой является установка его на самом сервере путем удаления физического файла JAR в собственной папке /lib сервера. Это необходимо, когда вы используете источник данных пула соединений JDBC, предоставляемый сервером, который, в свою очередь, нуждается в драйвере JDBC MySQL.

        См. также:

        Ответ 2

        Поскольку вы запускаете его в servlet , вам нужно, чтобы банка была доступна в контейнере сервлета. Вы либо включаете соединитель как часть вашего приложения war , либо помещаете его как часть расширенной библиотеки контейнера сервлетов и материала управления данными, если он есть. Вторая часть полностью зависит от контейнера, который у вас есть.

        Ответ 3

        Другие правы в том, чтобы сделать JAR драйвера доступным для вашего контейнера сервлетов. Мой комментарий подразумевал, что вы проверяете из командной строки, не является ли сам драйвер.

        Вместо пустого main() попробуйте что-то вроде этого, адаптированного из прилагаемой документации:

        На моей платформе я сделал бы это:

        На вашей платформе вам нужно использовать ; как разделитель путей, как обсуждалось здесь и здесь.

        Ответ 4

        Поместите mysql-connector-java-5.1.6-bin.jar в папку \Apache Tomcat 6.0.18\lib. Ваша проблема будет решена.

        Ответ 5

        Выполните следующие действия:

        1) Установите eclipse
        2) Импорт Apache для затмения
        3) Установите mysql
        4) Загрузите mysqlconnector/J
        5) Разархивируйте zip файл, перемещаясь по нему, пока вы не получите файл bin. Затем поместите все файлы, которые присутствуют в папке, содержащей bin, в C:\Program Files\mysql\mysql server5.1/ затем укажите тот же путь, что и адрес при определении драйвера в затмении.

        Это все очень простые парни.

        Ответ 6

        Что вам не следует делать (особенно при работе над общим проектом)

        Еще одно решение, которое я НЕ рекомендую: скопировать его в папку tomcat/lib. хотя это может работать, будет сложно управлять зависимостью для общего (git) проекта.

        Хорошее решение 1

        Создайте папку vendor . поставьте туда всю свою внешнюю библиотеку. затем сопоставьте эту папку как зависимость от вашего проекта. в eclipse вам нужно

        Хорошее решение 2

        Используйте maven (или любую альтернативу) для управления зависимостью проекта

        Ответ 7

        Если проблема все еще сохраняется,

        Очистите проект. Остановите свой сервер. Наконец попробуйте запустить.

        Ответ 8

        Много раз я сталкивался с этой проблемой, я испытал ClassNotFoundException. если банка не находится в физическом месте.

        Поэтому убедитесь, что .jar файл (соединитель mysql) находится в физическом расположении папки WEB-INF lib. а также убедитесь, что перезагрузите Tomcat, используя команду shutdown в cmd. он должен работать.

        Ответ 9

        Единственное решение, с которым я работал, - это вставить файл .jar в WEB-INF/lib. Надеюсь, это поможет.

        Ответ 10

        Предполагая, что ваш проект основан на maven, добавьте его в свой POM:

        Сохранить > Сборкa > и снова проверить подключение. Оно работает! Ваша фактическая версия соединителя java mysql может отличаться.

        Ответ 11

        Ответ 12

        Ответ 13

        Моя проблема была немного другой. Вместо jdbc:oracle:thin:@server:port/service меня было это как server:port/service .

        Читайте также: