Скомпилированный мод не подключается к бд

Версия Minecraft
1.18.2
API
Fabric
Мод на fabricmc, пытаюсь подключится к базе данных postgresql. Когда запускаю мод через грейдловский runClient, то всё работает правильно и к бд подключается. Когда же скомпилирую мод и запускаю его в майнкрафте, то получаю SQLException

Есть предположение, что ошибка из-за того, что бд на локалхосте, но не уверен в этом.
Мой build.gradle:

build.gradle:
plugins {
    id 'fabric-loom' version '0.12-SNAPSHOT'
    id 'maven-publish'
}

sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17

archivesBaseName = project.archives_base_name
version = project.mod_version
group = project.maven_group

repositories {

}

dependencies {
    implementation 'org.postgresql:postgresql:42.6.0'
    implementation 'org.hibernate:hibernate-core:6.2.7.Final'
    compileOnly 'org.projectlombok:lombok:1.18.28'
    annotationProcessor 'org.projectlombok:lombok:1.18.28'
    minecraft "com.mojang:minecraft:${project.minecraft_version}"
    mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
    modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
    modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
}

processResources {
    inputs.property "version", project.version

    filesMatching("fabric.mod.json") {
        expand "version": project.version
    }
}

tasks.withType(JavaCompile).configureEach {
    options.compilerArgs << "-Xlint:deprecation"
    it.options.release = 17
}

java {
    withSourcesJar()
}

jar {
    from("LICENSE") {
        rename { "${it}_${project.archivesBaseName}"}
    }
}

publishing {
    publications {
        mavenJava(MavenPublication) {
            from components.java
        }
    }
    
    repositories {
    
    }
}

PostgreSQLConnector:
PostgreSQLConnector.java:
    private String hostName;
    private String databaseName;
    private String port;
    private String password;
    private String login;

    @Override
    public void read(Properties properties) {
        hostName = properties.getProperty("hostname");
        port = properties.getProperty("port");
        databaseName = properties.getProperty("databasename");
        login = properties.getProperty("username");
        password = properties.getProperty("password");
    }

    @Override
    public boolean connect() {
        read(Config.read());
        String url = "jdbc:postgresql://" + hostName + ":" + port + "/" + databaseName;

        System.setProperty("url", url);
        System.setProperty("username", login);
        System.setProperty("password", password);
        try {
            Connection connection = DriverManager.getConnection(url, login, password);
            if (connection != null) {
                return true;
            }
        } catch (SQLException e) {
            e.printStackTrace();
            return false;
        }
        return true;
    }
}
 
Краш-лог
[15:54:05] [Render thread/INFO]: [STDERR]: java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/postgres
[15:54:05] [Render thread/INFO]: [STDERR]: at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:706)
[15:54:05] [Render thread/INFO]: [STDERR]: at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:229)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.database.PostgreSQLConnector.connect(PostgreSQLConnector.java:71)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.Saver.save(Saver.java:117)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.Saver.lambdasendsend5(Saver.java:86)
[15:54:05] [Render thread/INFO]: [STDERR]: at java.base/java.util.HashMap$Values.forEach(HashMap.java:1065)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.Saver.send(Saver.java:67)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.Saver.lambdaonInitializeonInitialize1(Saver.java:50)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambdastaticstatic2(ClientTickEvents.java:65)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.class_310.handlerzeb000zeb000fabric-lifecycle-events-v1$onEndTick(class_310.java:4472)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.class_310.method_1574(class_310.java:1817)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.class_310.method_1523(class_310.java:1091)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.class_310.method_1514(class_310.java:737)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.client.main.Main.main(Main.java:236)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
Краш-лог:
[15:54:05] [Render thread/INFO]: [STDERR]: java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/postgres
[15:54:05] [Render thread/INFO]: [STDERR]: at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:706)
[15:54:05] [Render thread/INFO]: [STDERR]: at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:229)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.database.PostgreSQLConnector.connect(PostgreSQLConnector.java:71)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.Saver.save(Saver.java:117)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.Saver.lambdasendsend5(Saver.java:86)
[15:54:05] [Render thread/INFO]: [STDERR]: at java.base/java.util.HashMap$Values.forEach(HashMap.java:1065)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.Saver.send(Saver.java:67)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.com.nikitakuznec.Saver.lambdaonInitializeonInitialize1(Saver.java:50)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents.lambdastaticstatic2(ClientTickEvents.java:65)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.class_310.handlerzeb000zeb000fabric-lifecycle-events-v1$onEndTick(class_310.java:4472)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.class_310.method_1574(class_310.java:1817)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.class_310.method_1523(class_310.java:1091)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.class_310.method_1514(class_310.java:737)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.minecraft.client.main.Main.main(Main.java:236)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
[15:54:05] [Render thread/INFO]: [STDERR]: at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
1,074
72
372
В среде classpath наследуется, при релизной сборке никакие библиотеки не подключаются, они только для компиляции кода используются.

p.s. Упрости конфиг подключения к БД: убери hostname, port и databasename - вместо них достаточно URL указывать. Так будет больше гибкости в настройке подключения.
 
Сверху