Проблема с драйвером PostgreSQL - PullRequest
0 голосов
/ 27 февраля 2019

Этот вопрос уже задавался много раз, но я не нашел подходящего ответа.

Вкратце: "Не найден подходящий драйвер для jdbc: postgresql: // localhost: 5432 / Ecole"

Мой код:

import java.sql.*;

public class Connect {
    public static void main(String[] args) {
        try {
            Class.forName("org.postgresql.Driver");
            System.out.println("Driver O.K.");

            String url = "jdbc:postgresql://localhost:5432/Ecole";
            String user = "postgres";
            String passwd = "root";

            Connection conn = DriverManager.getConnection(url, user, passwd);
            System.out.println("Connexion effective !");

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Ошибка стека:

java.lang.ClassNotFoundException: org.postgresql.Driver
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:264)
    at Connect.main(Connect.java:6)

Process finished with exit code 0

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

Соединение успешно установлено на IntelIJ (также успешно на Datagrip) enter image description here

Драйвер обновлен на IntelIJ (такжедействителен для Datagrip) и правильное имя класса драйвера, как указано в моей основной enter image description here

База данных активна на pgAdmin enter image description here

Datagrip работает нормально enter image description here

Как уже упоминалось выше, все это приводит меня к выводу, что моя программа, скорее всего, ищет драйвер в неправильном месте (поправьте меня, я ошибаюсь)).И что ?Что мы должны делать из этой ситуации?Большое спасибо за вашу помощь.

1 Ответ

0 голосов
/ 27 февраля 2019

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

Для этого:

  1. загрузить файл postgresql .jar в следующемссылка: https://jdbc.postgresql.org/download.html

  2. поместите его где-нибудь на вашем компьютере, рекомендуется поместить его в ваш jre / lib, как показано ниже: C: \ Program Files \ Java \ jdk1.8.0_181 \ jre \lib

  3. поместите его в путь к классу времени выполнения, как показано ниже.(у меня ушло много времени, чтобы разобраться, поэтому я все расставил шаг за шагом).

enter image description here

enter image description here

enter image description here

enter image description here

enter image description here

...