Kotlin · Bukkit · Spigot · Paper

KOTLIN-PLUGIN GENERATOR

Det samme Bukkit-API-et, skrevet i Kotlin. Beskriv hva pluginet skal gjøre, så setter Codexe opp et Gradle-prosjekt med Kotlin-kildesett, en riktig plugin.yml og en JAR som den kan kompilere for deg før du laster den ned.

Hvorfor generere et Kotlin-plugin

Null-sikkerhet der Bukkit trenger det

Bukkit gir stadig tilbake null: frakoblede spillere, manglende verdener, fraværende konfigurasjonsnøkler. Kotlin gjør disse tilfellene eksplisitte ved kompilering i stedet for klokka 02 i serverkonsollen.

Et ekte Gradle-prosjekt

build.gradle.kts satt opp for Kotlin JVM-pluginet og Paper/Spigot-repositoryene, med standard kildestruktur. Ikke én enkelt fil du må finne et hjem til.

Langt mindre standardkode

Dataklasser for konfigurasjonsmodeller, extension-funksjoner på Player og ItemStack og scope-funksjoner i stedet for nøstede null-sjekker. Den samme logikken med merkbart mindre kode.

Støtter også Folia og proxyer

Hvis du bruker Papers flertrådede fork, merk at Folia fjerner den enkle hovedtråden og trenger regionbevisst planlegging. Velg Folia-målet i plugingeneratoren slik at planleggingen blir riktig fra starten. For arbeid på nettverksnivå bruker du generatoren for proxyplugins. Plugin-dokumentasjonen forklarer forskjellene.

Eksempelprompter

> Et Kotlin-plugin for Paper 1.21 med en /kit-kommando som gir et konfigurerbart sett med gjenstander, en nedkjøling per spiller lagret i en dataklasse og YAML-konfigurasjon med standardverdier.
> Et Kotlin-plugin som logger hver blokkbrudd til en fil per verden asynkront og legger til /blocklog <player> for å lese tilbake de siste 20 oppføringene.
> Et Kotlin-plugin som legger til en egen crafting-oppskrift for en fortryllet gjenstand, med en listener som hindrer at den brukes utenfor Nether.
> Et Kotlin-plugin med et GUI med sider som lister opp spillere som er pålogget, og klikk-for-å-teleportere bak en tillatelsesnode.

Vanlige spørsmål om Kotlin-plugingeneratoren

Kjører Kotlin-plugins på en vanlig Spigot- eller Paper-server?

+

Ja. Kotlin kompileres til vanlig JVM-bytekode, så serveren vet ikke og bryr seg ikke om hvilket språk pluginet er skrevet i. Det lastes akkurat som et Java-plugin.

Må jeg installere noe på serveren?

+

Nei. Kotlins standardbibliotek er shadet inn i JAR-filen under byggingen, så pluginet er selvstendig. Det gjør riktignok JAR-filen større enn et tilsvarende Java-plugin.

Maven eller Gradle?

+

Gradle. Kotlin-målet bruker Gradles Kotlin-plugin, som er standard verktøykjede for Kotlin på JVM. Java-målene bruker Maven.

Hva får jeg egentlig ut av Kotlin her?

+

Mest null-sikkerhet og mindre seremoni. Bukkit-API-er returnerer null mange steder (getPlayer, getWorld, oppslag i konfigurasjon), og Kotlins typesystem tvinger deg til å håndtere det ved kompilering i stedet for å oppdage det som en NullPointerException i produksjon. Dataklasser, extension-funksjoner og scope-funksjoner kutter også mye standardkode ut av konfigurasjons- og listenerkode.

Kan jeg blande Java og Kotlin i ett plugin?

+

Generatoren lager et Kotlin-kildesett. Gradle kan kompilere blandede kilder, så du kan legge til Java-filer etterpå, men det genererte prosjektet er Kotlin først.

Bør jeg velge Kotlin eller Java?

+

Velg Java hvis du vil ha best mulig kompatibilitet med veiledninger, eksisterende kodeutdrag og andres kode, siden nesten alt Bukkit-materiale forutsetter Java. Velg Kotlin hvis du er komfortabel med det og vil ha mer kortfattet, null-sikker kode. API-et er det samme uansett.

Prefer Java, or working somewhere else in the stack? Codexe also generates:

Hvordan Codexe bygger og sjekker disse prosjektene, hva du bør ha med i forespørselen og vanlige problemer: guide for Spigot and Paper plugins (Java or Kotlin).

KLAR FOR ET NYTT PLUGIN?

Gratisnivået fylles på med 50K tokens hver dag, nok til å levere et lite Kotlin-plugin på én gang.

BEGYNN Å SMI
Kotlin-plugingenerator for Minecraft – Bukkit-plugins i Kotlin bygget med AI | Codexe