Vodič
Kako ažurirati plugin na novu Minecraft verziju
Ažurirano 18. listopada 2026.
Kad tvoj poslužitelj prijeđe na novu Minecraft verziju, mnogi pluginovi nastave raditi bez promjena jer je Bukkit API stabilan. Drugi se prestanu učitavati ili se pokvare u sitnicama. Ako autor nije ažurirao plugin, a ti imaš njegov izvorni kod, možeš ga ažurirati sam: evo što se mijenja i kojim redom.
Opiši ga onako kako bi trebao raditi na novoj verziji.
Generiraj ovo uz CodexeKorak po korak
1.Najprije isprobaj stari .jar
Stavi ga na testni poslužitelj nove verzije i čitaj konzolu. Ako se učita i radi, možda ništa ne trebaš mijenjati.
2.Promijeni ovisnost o API-ju
U
pom.xmlilibuild.gradlepostavipaper-apiilispigot-apina novu verziju.3.Ažuriraj api-version i Javu
Postavi
api-versionuplugin.yml(na primjer'1.21') i kompajliraj za Javu koju nova verzija treba: Java 17 prije 1.20.5, Java 21 od 1.20.5, Java 25 za 26.x.4.Popravi ono što se više ne kompajlira
Napravi build i prođi kroz greške: preimenovani materijali, uklonjene metode, promijenjene klase evenata. Kompajler ih ispisuje s datotekom i retkom.
5.Ažuriraj ovisnosti
Pluginovi koje tvoj plugin koristi (Vault, PlaceholderAPI, ProtocolLib, WorldGuard) također trebaju verzije koje podržavaju novu Minecraft verziju, i u build datoteci i na poslužitelju.
6.Testiraj na novoj verziji
Učitaj ga na poslužitelj nove verzije s istim pluginovima i isprobaj svaku naredbu i značajku, a ne samo pokretanje.
Što se obično pokvari
- Nazivi materijala i enumova: ažuriranje 1.13 preimenovalo je većinu predmeta i blokova; kasnije verzije neke dodaju, preimenuju ili uklanjaju. Kod koji koristi stara imena ili brojčane id-ove ne radi.
- Uklonjene zastarjele metode: metode označene kao zastarjele kroz nekoliko verzija na kraju nestanu.
- Podaci predmeta: od 1.20.5 NBT predmeta zamijenjen je data komponentama. Pluginovima koji izravno uređuju NBT predmeta treba prepisati taj dio; uobičajeni
ItemMetaAPI nastavlja raditi. - NMS i refleksija: kod koji koristi interne klase poslužitelja pokvari se gotovo na svakoj verziji. Zamijeni ga API-jem gdje je moguće ili bibliotekom kao što je ProtocolLib.
- Verzije biblioteka: shadeane biblioteke izrađene za stariju Javu mogu ne raditi na novoj.
Ažuriranje preko mnogo verzija
Prelazak s 1.8 ili 1.12 na 1.21 bliži je prepisivanju dijelova koji diraju predmete, blokove i čestice nego ažuriranju. Napravi to odjednom na novom API-ju, a ne verziju po verziju, i računaj na to da i konfiguracijske datoteke trebaju nova imena materijala.
Ako plugin mora podržavati više verzija odjednom, kompajliraj ga na najstarijoj koju podržavaš i izbjegavaj API dodan kasnije ili koristi zasebne buildove po verziji.
S Codexeom
Na Pro planu i višima možeš uvesti izvorni kod plugina kao ZIP i zatražiti, na primjer, „Ovo je moj Paper 1.20.4 plugin. Ažuriraj ga na Paper 1.21.4”. Codexe čita Minecraft verziju iz build datoteke, builda s Javom koju ta verzija treba i ispravlja greške pri kompajliranju koristeći stvarne potpise API-ja na kojem builda. Za plugin koji si napravio na Codexeu zatraži novu verziju u chatu projekta.
Kompajliranje dokazuje da se plugin builda na novom API-ju. Zatim ga isprobaj na testnom poslužitelju, jer se promjene ponašanja između verzija ne pokazuju kao greške pri kompajliranju.
Pitanja
Mogu li ažurirati plugin bez njegova izvornog koda?
Ne pouzdano. Dekompajliranjem .jar datoteke dobiva se kod koji je teško održavati i koji može kršiti autorovu licencu. Najprije potraži ažuriranu verziju ili održavani fork.
Radi li plugin za 1.21.1 na 1.21.4?
Često da, unutar iste glavne verzije, osim ako koristi NMS ili API koji se promijenio. Testiraj ga prije nego što se osloniš na njega.
Zašto poslužitelj javlja „Unsupported API version”?
To je obrnuti slučaj: plugin cilja noviji API od poslužitelja. Napravi ga za verziju svog poslužitelja ili ažuriraj poslužitelj.
Ponovno izradi plugin za svoju verziju
Ovaj prompt otvara se spreman za slanje:
“Paper 1.21.4 verzija mog Spigot 1.12.2 plugina TreeFeller: rušenje donjeg trupca stabla sjekirom ruši cijelo stablo, troši izdržljivost po trupcu, radi za svaku vrstu drva iz 1.21 uključujući cherry i mangrove, uključivanje i isključivanje s /treefeller, postavke u config.yml.”
Generiraj ovo uz Codexe