Siirry sisältöön
Alustat

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
  1. Mitä pyyntöön kannattaa laittaa
  2. Mitä Codexe generoi
  3. Versiot ja Java
  4. Koonti ja vahvistus
  5. Asennus
  6. Yleiset ongelmat

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.
Text
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).
Text
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.
YAML
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

OireTodennä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 palvelimellaPlugin tähtää uudempaan API:in kuin palvelimesi. Kerro pyynnössä palvelimesi tarkka versio.
Komento ei tee mitäänKomento puuttuu tiedostosta plugin.yml, tai pelaajalta puuttuu käyttöoikeus.
NoClassDefFoundError Vaultille tai vastaavalleRiippuvuuspluginia ei ole asennettu palvelimelle.
Kääntyy, mutta jokin ominaisuus toimii väärinKuvaile tarkka pelin sisäinen toiminta keskustelussa. Vahvistus tarkistaa koonnin, ei pelattavuutta.
Spigot- ja Paper-pluginit | Codexe Docs