1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

JDBC драйвер postges

Тема в разделе "Разработка плагинов для новичков", создана пользователем NeMaster, 11 дек 2021.

  1. Автор темы
    NeMaster

    NeMaster Новичок Пользователь

    Баллы:
    21
    Не получается завести БД.
    При попытке коннекта получаю ошибку
    Код:
    No suitable driver found for jdbc:postgresql://localhost:5432/postgres
    Не пойму что же я делаю не так

    Код:
    String url = "jdbc:postgresql://" + host + ":" + port + "/" + db;
    this.connection = DriverManager.getConnection(url, user, password);
     
  2. Todorov26

    Todorov26 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Todorov26
    Ты к проекту подключил драйвер как либу? Если да, то Class.forName(путь к классу драйвера) кидает ошибку?
     
  3. Автор темы
    NeMaster

    NeMaster Новичок Пользователь

    Баллы:
    21
    Да и да. Тоже пробовал postgresql-42.2.10.jar и postgresql-42.3.1.jar подключать. При выполнении кода
    Код:
    try {
        Class.forName("org.postgresql.Driver");
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    }
    получаю ошибку
    java.lang.ClassNotFoundException: org.postgresql.Driver
     
  4. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    В ведре значит нету драйвера, таскай в плагине.
     
  5. Автор темы
    NeMaster

    NeMaster Новичок Пользователь

    Баллы:
    21
    Да, действительно, теперь я кажется стал понимать больше в том как это устроено.
    Тогда возникает такой вопрос, а как правильно в ИДЕЕ включить библиотеку в состав плагина?
    Как я уже понял недостаточно в проект добавить библиотеку, проект будет успешно компилироваться, но в состав jar файла плагина библиотека не войдёт.
    Я попробовал во вкладке "настройки проекта" -> "Артифакты" -> "выходной слой" перетащить jar файлы библиотек, но это не помогло, мне кажется они должны быть распакованными внутри плагина.
     
  6. Автор темы
    NeMaster

    NeMaster Новичок Пользователь

    Баллы:
    21
    Я вижу, что в других готовых плагинах есть папка META-INF в которой можно встретить файл java.sql.Driver
     
  7. Todorov26

    Todorov26 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Todorov26
    Юзать maven/gradle как вариант. Если не хочешь, то можешь попробовать кликнуть на настройку конфигураций, найти VM options и вставить туда Djava.library.path=путь до библиотеки. Сам не проверял ибо юзаю выше указаные сборщики.
     
  8. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Да вы все усложняете, либо помещаешь классы либы в свой плагин, либо делаешь либу плагином, что даже удобней.
     
  9. Todorov26

    Todorov26 Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Todorov26
    А смысл делать либу плагином? Я конечно давненько сделал плагин который всегда ставлю вместе со своими.
    Помещать классы все равно что делать лишнюю работу, ибо сборщик делает тоже самое по факту) Или я не прав?
     
  10. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Что бы юзать с любым плагином, что требует эту либу. Логично нет? А не паковать ее в 90 плагинах.
     
  11. NuaN

    NuaN Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    NuaN
    Еще как вариант - можно закинуть либу прямо в ядро
     

Поделиться этой страницей