PostgreSQL JDBC
The official PostgreSQL JDBC driver (pgjdbc) repackaged as a Bukkit/Spigot/Paper plugin and a Fabric/Forge/NeoForge mod. One universal jar covers every supported loader and MC version.
The mod does nothing on its own — it exists so plugins or mods that want to talk to a PostgreSQL database don't each have to bundle their own copy of the driver.
What's in the jar
org.postgresql:postgresql:42.7.5 plus minimal loader stubs for Spigot, Forge 1.12, Forge 1.13–1.16, Forge 1.17–1.20, NeoForge 1.21+, and Fabric. The driver classes stay at their canonical org.postgresql.* paths — no relocation — so consumers find them with plain Class.forName("org.postgresql.Driver"). META-INF/services/java.sql.Driver is preserved so the driver auto-registers with DriverManager.
Compatibility
| Loader | MC versions | Notes |
|---|---|---|
| Bukkit / Spigot / Paper / Folia / Purpur | 1.8 → current | drop into plugins/ |
| Fabric | 1.16.1 → current | needs Fabric Loader 0.14+ |
| Forge | 1.12 → 1.20 | universal jar, no Mixins |
| NeoForge | 1.21 → current | drop into mods/ |
Java 8+ required (pgjdbc 42.x baseline).
Using it from a plugin or mod
Declare pgjdbc as compileOnly against the same version this jar ships:
compileOnly("org.postgresql:postgresql:42.7.5")
Probe at startup. Fall through gracefully if the operator hasn't installed this:
try {
Class.forName("org.postgresql.Driver");
} catch (ClassNotFoundException e) {
getLogger().warning("PostgreSQL backend disabled — install minecraft-postgresql-jdbc");
return;
}
try (Connection c = DriverManager.getConnection(url, user, password)) {
// ...
}
On Paper 1.17+ each plugin's classloader is isolated. Add this mod to your plugin.yml softdepend so the driver classes are visible to your plugin:
softdepend: [minecraft-postgresql-jdbc]
Fabric and NeoForge unify all mods on one classloader, so no equivalent declaration is needed there.
Versioning
The jar version tracks pgjdbc one-to-one. 42.7.5+2026-04-25 ships pgjdbc 42.7.5; the suffix is the build date. A scheduled GitHub Action checks Maven Central daily — when pgjdbc cuts a new release, it opens an auto-merge PR and the Modrinth release goes out automatically.
License
The driver is BSD-2-Clause (PostgreSQL Global Development Group). The repackage adds no functional changes and inherits that license. Full text in LICENSE.
Issues, source: GitHub.
