Spigot- ja Paper-pluginit
Paras Bukkit-, Spigot- tai Paper-plugin Codexelta Javalla tai Kotlinilla: pyynnön sisältö, versiot, plugin.yml, riippuvuudet, koonti ja yleiset ongelmat.
Päivitetty
Tällä sivulla
Bukkit/Spigot/Paper-tyypit tuottavat palvelinpluginin, joka toimii Paperilla, Spigotilla ja niiden haaroilla. Valitse Java (Maven-projekti) tai Kotlin (Gradle-projekti, jossa on build.gradle.kts).
Pelataksesi pluginiasi pelissä käynnistä yksityinen testipalvelin toiminnolla Kokeile heti.
Kun lähetät pyynnön, Codexe kysyy, mille Minecraft-versiolle plugin on tarkoitettu, väliltä 1.8.8 - 26.3. Koodi kirjoitetaan kyseisen version API:lle ja Java-tasolle, ja testipalvelin ajaa samaa versiota. Ennen 30. syyskuuta 2026 luodut projektit pitävät koontitiedostoihinsa kirjoitetun version.
#Mitä pyyntöön kannattaa laittaa
- Palvelinohjelmisto ja versio: "Paper 1.21.4" tai "Spigot 1.20.1". Paperilla on laajempi API kuin Spigotilla. Spigotille kirjoitettu koodi toimii Paperilla, mutta ei toisin päin, joten pyydä Spigotia, jos tarvitset molempia.
- Komennot argumentteineen, kuka voi käyttää niitä ja tab-täydennys.
- Käyttöoikeudet oletusarvoineen (
true,op,false). - config.yml-avaimet, joiden haluat olevan muokattavissa.
- Tallennus: YAML, SQLite, MySQL tai muisti.
- Integraatiot: Vault, PlaceholderAPI, LuckPerms, WorldGuard…, erikseen nimettyinä, jotta ne lisätään riippuvuuksiksi.
A Paper 1.21.4 plugin (Java) called Bounties.
- /bounty set <player> <amount>: takes money via Vault, adds it to the player's bounty.
- Killing a player with a bounty pays it to the killer.
- /bounty top shows the 10 highest bounties.
- Bounties stored in SQLite. Minimum bounty 100 (config.yml).
- Permission bounties.set (default true).A Paper 1.21.4 plugin in Kotlin called Bounties, same features as above.
Use Kotlin idioms (data classes, extension functions) but keep the Bukkit API usage standard.#Mitä Codexe generoi
- Maven-projektin (Java) tai Gradle-projektin (Kotlin) oikealla API-riippuvuudella.
- Pääluokan, joka laajentaa
JavaPlugin-luokkaa, sekä komento-, kuuntelija- ja tallennusluokat. plugin.yml-tiedoston, jossa on pääluokka,api-version, komennot ja käyttöoikeudet, sekäconfig.yml-tiedoston, kun asetuksia on.
name: Bounties
version: 1.0.0
main: eu.codexe.bounties.Bounties
api-version: '1.21'
depend: [Vault]
commands:
bounty:
description: Manage bounties
permissions:
bounties.set:
default: true#Versiot ja Java
Codexe lukee Minecraft-version koontitiedostosta ja kokoaa Java 17:llä (ennen 1.20.5:tä), Java 21:llä (1.20.5 ja uudemmat) tai Java 25:llä (26.x). Jos et kerro versiota, käytetään Paper/Spigot-API:n versiota 1.20.6.
#Koonti ja vahvistus
Codexe kääntää pluginin ennen kuin kutsuu sitä Valmiiksi ja tarkistaa, että JAR sisältää luokat ja plugin.yml-tiedoston (tai paper-plugin.yml-tiedoston). Pluginien koonnit vievät yleensä selvästi alle minuutin. Katso Käännä.
#Asennus
Lataa JAR, laita se kansioon plugins/, käynnistä palvelin uudelleen (älä käytä /reload-komentoa) ja tarkista konsolista käynnistyksen virheet.
#Yleiset ongelmat
| Oire | Todennäköinen syy |
|---|---|
| Plugin ei lataudu, "main class not found" | main: tiedostossa plugin.yml ei vastaa luokkaa. Pyydä keskustelussa korjaamaan se, tai tarkista käsin tehtyjen uudelleennimeämisten jälkeen. |
| "Unsupported API version" vanhemmalla palvelimella | Plugin tähtää uudempaan API:in kuin palvelimesi. Kerro pyynnössä palvelimesi tarkka versio. |
| Komento ei tee mitään | Komento puuttuu tiedostosta plugin.yml, tai pelaajalta puuttuu käyttöoikeus. |
NoClassDefFoundError Vaultille tai vastaavalle | Riippuvuuspluginia ei ole asennettu palvelimelle. |
| Kääntyy, mutta jokin ominaisuus toimii väärin | Kuvaile tarkka pelin sisäinen toiminta keskustelussa. Vahvistus tarkistaa koonnin, ei pelattavuutta. |