Ein hochflexibles, extrem leichtgewichtiges Minecraft-Plugin für Paper/Spigot-Server. Es baut stabile Verbindungen zu verschiedenen Datenbank-Systemen auf und testet diese beim Serverstart vollautomatisch auf ihre Erreichbarkeit.
Dieses Projekt dient als perfektes, skalierbares Fundament für Plugins, die Spielerdaten, Statistiken oder serverübergreifende Informationen persistent speichern müssen.
- Multi-Datenbank Support: Unterstützt gleichzeitig MariaDB, MySQL, PostgreSQL und SQLite.
- Beliebig viele Verbindungen: Du kannst in der Konfiguration so viele Datenbanken deklarieren, wie du möchtest (z. B. für verschiedene Pterodactyl/Pelican-Nodes, Web-Panels oder Ingame-Systeme).
- Automatischer Verbindungstest: Prüft beim Hochfahren alle eingetragenen Systeme und gibt ein klares Feedback (
✅oder❌) im Server-Log aus. - Vollautomatische Releases: Dank GitHub Actions wird bei jedem neuen GitHub-Release (Tag) das Plugin kompiliert, die Version automatisch angepasst und die fertige
.jar-Datei hochgeladen.
Nach dem ersten Serverstart findest du im Ordner /plugins/SimpleDatabasePlugin/ die config.yml. Du kannst hier unter databases: beliebig viele Blöcke mit individuellen Namen anlegen:
databases:
# Deine Haupt-Datenbank (MariaDB / MySQL)
haupt_db:
type: "mariadb"
host: "127.0.0.1"
port: 3306
database: "minecraft"
username: "root"
password: "dein_passwort_hier"
# Eine zweite Datenbank (z.B. PostgreSQL für ein Webpanel)
web_stats:
type: "postgresql"
host: "127.0.0.1"
port: 5432
database: "stats"
username: "postgres"
password: "password123"
# Eine kleine, lokale SQLite-Datei direkt im Plugin-Ordner
lokale_daten:
type: "sqlite"
file: "backup.db"- Lade die fertige
.jar-Datei aus den Release-Assets herunter. - Schiebe die Datei in den
plugins-Ordner deines Minecraft-Servers. - Starte den Server neu oder lade die Plugins neu.
Falls du das Plugin manuell in deiner eigenen Entwicklungsumgebung oder im GitHub Codespace kompilieren möchtest, stelle sicher, dass du Java 17 (oder höher) installiert hast.
Nutze im Hauptverzeichnis einfach folgenden Maven-Befehl:
mvn clean packageDie fertige Datei (inklusive aller schattierten Treiber wie PostgreSQL) findest du anschließend im /target/-Ordner.
⚠️ Wichtiger Entwicklungshinweis: SQL-Abfragen blockieren den Haupt-Thread von Minecraft. Führe alle Datenbank-Interaktionen (Reads/Writes) zwingend asynchron über den Bukkit-Scheduler aus, um Server-Lags zu vermeiden:Bukkit.getScheduler().runTaskAsynchronously(plugin, () -> { // Deine SQL-Logik hier });