Handleiding
Een Paper-plugin maken
Bijgewerkt 7 oktober 2026
Paper is de meest gebruikte Minecraft-serversoftware voor plugins: het draait Spigot-plugins en voegt een grotere, snellere API toe. Een Paper-plugin is een Java-project (of Kotlin) dat tegen paper-api wordt gecompileerd. Hier staat wat het nodig heeft, met de hand of met een AI die het voor je bouwt.
Een voorbeeld om mee te beginnen.
Genereer dit met CodexeStap voor stap
1.Kies de Minecraft-versie
Gebruik de versie die je server draait. Die bepaalt de Java-versie: Java 17 vóór 1.20.5, Java 21 vanaf 1.20.5, Java 25 voor 26.x.
2.Maak het project
Een Gradle- of Maven-project met de dependency
paper-apivoor die versie, uit de PaperMC-repository, in de scopeprovided/compileOnly.3.Schrijf de hoofdklasse
Een klasse die
JavaPluginuitbreidt, metonEnable()om commando's en listeners te registreren.4.Beschrijf de plugin aan de server
plugin.yml(name, version, main, api-version, commands, permissions). Paper ondersteunt ookpaper-plugin.yml, met eigen laadregels.5.Bouwen en testen
Bouw de .jar, zet hem in de map
plugins/van een Paper-testserver, start hem en controleer de console op fouten.
Paper of Spigot?
Code die voor de Spigot-API is geschreven draait op Paper, maar niet andersom: Paper voegt events en methoden toe (bijvoorbeeld de Adventure-tekstcomponenten en veel async-API's) die Spigot niet heeft. Schrijf voor Paper als je server Paper draait; schrijf voor Spigot als de plugin ook op Spigot-servers moet draaien.
De snelle manier
Kies op Codexe een Bukkit/Spigot/Paper-plugin, zeg "Paper" en de versie in het verzoek en beschrijf wat hij doet. Codexe zet het project en de juiste Java-versie op, compileert het, lost buildfouten op en laat je joinen op een Paper-testserver met de plugin geïnstalleerd.
Veelvoorkomende problemen
- UnsupportedClassVersionError: de plugin is gecompileerd met een nieuwere Java dan de server draait.
- NoSuchMethodError / NoClassDefFoundError: de plugin gebruikt een API die niet bestaat op de serverversie, of een dependency is niet in de .jar geshade.
- Plugin laadt maar commando's doen niets: het commando ontbreekt in
plugin.ymlof de executor is niet geregistreerd.
Vragen
Werken Paper-plugins op Purpur of Folia?
Purpur is een fork van Paper, dus Paper-plugins draaien daar. Folia verandert de threading: een plugin moet voor de regionale scheduler zijn geschreven om op Folia te draaien.
Kan ik een Paper-plugin in Kotlin schrijven?
Ja. Codexe kan een Kotlin Gradle-project met build.gradle.kts genereren voor dezelfde Paper-API.
Bouw nu een Paper-plugin
Deze prompt opent klaar om te versturen:
“Een Paper 1.21.4-plugin genaamd Bounties: /bounty set <player> <amount> met de Vault-economie, de moordenaar krijgt de beloning, /bounty list toont de top 10, bounties worden bewaard na herstarts, berichten in config.yml.”
Genereer dit met Codexe