Útmutató

Hogyan frissíts plugint új Minecraft-verzióra

Frissítve: 2026. október 18.

Amikor a szervered új Minecraft-verzióra vált, sok plugin változtatás nélkül tovább működik, mert a Bukkit API stabil. Mások nem töltődnek be, vagy apróbb dolgokban elromlanak. Ha a szerző nem frissített egy plugint, és megvan a forráskódja, magad is frissítheted: íme, mi változik és milyen sorrendben.

Írd le, hogyan kellene működnie az új verzión.

Generáld ezt a Codexe-szel

Lépésről lépésre

  1. 1.Előbb próbáld ki a régi .jar fájlt

    Tedd fel egy új verziójú tesztszerverre, és olvasd a konzolt. Ha betöltődik és működik, lehet, hogy semmit sem kell változtatnod.

  2. 2.Módosítsd az API-függőséget

    A pom.xml vagy a build.gradle fájlban állítsd a paper-api vagy spigot-api függőséget az új verzióra.

  3. 3.Frissítsd az api-versiont és a Java-verziót

    Állítsd be az api-version értékét a plugin.yml fájlban (például '1.21'), és fordíts arra a Java-verzióra, amely az új verzióhoz kell: Java 17 az 1.20.5 előtt, Java 21 az 1.20.5-től, Java 25 a 26.x-hez.

  4. 4.Javítsd, ami már nem fordul le

    Buildelj, és menj végig a hibákon: átnevezett anyagok, eltávolított metódusok, megváltozott eseményosztályok. A fordító fájllal és sorral együtt listázza őket.

  5. 5.Frissítsd a függőségeket

    A pluginod által használt pluginokból (Vault, PlaceholderAPI, ProtocolLib, WorldGuard) is olyan verzió kell, amely támogatja az új Minecraft-verziót, a buildfájlban és a szerveren is.

  6. 6.Teszteld az új verzión

    Töltsd be egy új verziójú szerverre ugyanazokkal a pluginokkal, és próbálj ki minden parancsot és funkciót, ne csak az indítást.

Ami általában elromlik

  • Anyag- és enumnevek: az 1.13-as frissítés a legtöbb tárgyat és blokkot átnevezte; a későbbi verziók hozzáadnak, átneveznek vagy eltávolítanak néhányat. A régi neveket vagy numerikus azonosítókat használó kód hibára fut.
  • Eltávolított elavult metódusok: a több verzión át elavultnak jelölt metódusok előbb-utóbb eltűnnek.
  • Tárgyadatok: 1.20.5-től a tárgyak NBT-jét adatkomponensek váltották fel. A tárgy-NBT-t közvetlenül szerkesztő pluginoknál azt a részt újra kell írni; a normál ItemMeta API tovább működik.
  • NMS és reflection: a belső szerverosztályokat használó kód szinte minden verzióval elromlik. Ahol lehet, cseréld le API-ra, vagy egy könyvtárra, például a ProtocolLibre.
  • Könyvtárverziók: a régebbi Java-verzióhoz buildelt, becsomagolt könyvtárak az újon hibára futhatnak.

Frissítés sok verzión át

Az 1.8-ról vagy 1.12-ről 1.21-re váltás inkább a tárgyakhoz, blokkokhoz és részecskékhez nyúló részek újraírása, mint frissítés. Egy lépésben csináld az új API-ra, ne verzióról verzióra, és számíts arra, hogy a konfigurációs fájlokban is új anyagnevek kellenek.

Ha a pluginnak egyszerre több verziót kell támogatnia, a legrégebbi támogatott verzióra fordíts, és kerüld a később hozzáadott API-t, vagy használj verziónként külön buildeket.

A Codexe-szel

A Pro csomagtól felfelé ZIP-ként importálhatod a plugin forráskódját, és kérheted például ezt: „Ez a Paper 1.20.4-es pluginom. Frissítsd Paper 1.21.4-re”. A Codexe a buildfájlból olvassa ki a Minecraft-verziót, az ahhoz szükséges Java-verzióval buildel, és a fordítási hibákat annak az API-nak a valódi szignatúráival javítja, amelyre buildel. Egy Codexe-en készült pluginnál kérd az új verziót a projekt chatjében.

A fordítás azt bizonyítja, hogy a plugin buildelhető az új API-ra. Utána próbáld ki egy tesztszerveren, mert a verziók közötti viselkedésváltozások nem jelennek meg fordítási hibaként.

Kérdések

Frissíthetek egy plugint a forráskódja nélkül?

Megbízhatóan nem. Egy .jar visszafejtése nehezen karbantartható kódot ad, és sértheti a szerző licencét. Előbb keress frissített verziót vagy karbantartott forkot.

Működik egy 1.21.1-es plugin 1.21.4-en?

Ugyanazon a fő verzión belül gyakran igen, hacsak nem használ NMS-t vagy megváltozott API-t. Teszteld, mielőtt számítanál rá.

Miért írja a szerver, hogy „Unsupported API version”?

Ez a fordított eset: a plugin újabb API-t céloz, mint a szerver. Buildeld a szervered verziójára, vagy frissítsd a szervert.

Buildeld újra a plugint a verziódra

Ez a prompt küldésre készen nyílik meg:

“A TreeFeller nevű Spigot 1.12.2-es pluginom Paper 1.21.4-es változata: ha egy fa alsó rönkjét fejszével töröd ki, az egész fa kidől, rönkönként tartósságot fogyaszt, minden 1.21-es fafajtával működik, a cseresznyét és a mangrovét is beleértve, ki-be kapcsolás a /treefeller paranccsal, beállítások a config.yml-ben.”

Generáld ezt a Codexe-szel
Hogyan frissíts Minecraft-plugint új verzióra | Codexe