ガイド
Paperプラグインの作り方
2026年10月7日に更新
Paperは、プラグイン向けに最も使われているMinecraftサーバーソフトウェアです。Spigotのプラグインが動き、その上に、より大きく高速なAPIが加わります。Paperプラグインは、paper-apiに対してコンパイルされるJava(またはKotlin)のプロジェクトです。手作業で作る場合と、AIにビルドしてもらう場合で、必要なものを説明します。
出発点になる例です。
Codexeでこれを生成手順
1.Minecraftのバージョンを選ぶ
サーバーで動いているバージョンを使います。それによってJavaのバージョンが決まります。1.20.5より前はJava 17、1.20.5以降はJava 21、26.xはJava 25です。
2.プロジェクトを作る
そのバージョン用の
paper-apiの依存関係を持つGradleまたはMavenのプロジェクトです。依存関係はPaperMCのリポジトリから、provided/compileOnlyのスコープで指定します。3.メインクラスを書く
JavaPluginを継承するクラスで、onEnable()でコマンドとリスナーを登録します。4.サーバーにプラグインを説明する
plugin.yml(name、version、main、api-version、commands、permissions)。Paperには独自の読み込みルールを持つpaper-plugin.ymlもあります。5.ビルドしてテストする
.jarをビルドして、Paperテストサーバーの
plugins/フォルダに入れ、起動して、コンソールにエラーがないか確認します。
PaperとSpigotのどちらですか?
Spigot APIで書かれたコードはPaperで動きますが、その逆は動きません。Paperには、Spigotにないイベントやメソッド(Adventureのテキストコンポーネントや多くの非同期APIなど)が追加されています。サーバーがPaperならPaper向けに、Spigotサーバーでも動かす必要があるならSpigot向けに書いてください。
手早い方法
CodexeでBukkit/Spigot/Paperのプラグインを選び、リクエストに「Paper」とバージョンを書いて、内容を説明します。Codexeがプロジェクトと適切なJavaのバージョンを用意し、コンパイルし、ビルドエラーを修正して、プラグイン入りのPaperテストサーバーに参加できるようにします。
よくある問題
- UnsupportedClassVersionError: サーバーで動いているものより新しいJavaで、プラグインがコンパイルされています。
- NoSuchMethodError / NoClassDefFoundError: サーバーのバージョンに存在しないAPIをプラグインが使っているか、依存関係が.jarにシェーディングされていません。
- プラグインは読み込まれるのにコマンドが何もしない: コマンドが
plugin.ymlにないか、エグゼキューターが登録されていません。
よくある質問
PaperプラグインはPurpurやFoliaで動きますか?
PurpurはPaperのフォークなので、Paperのプラグインがそのまま動きます。Foliaはスレッドの扱いが変わるため、Foliaで動かすには、リージョンスケジューラー向けにプラグインを書く必要があります。
PaperプラグインをKotlinで書けますか?
はい。Codexeは、同じPaper API向けに、build.gradle.ktsを使ったKotlinのGradleプロジェクトを生成できます。
今すぐPaperプラグインを作る
このプロンプトは、そのまま送信できる状態で開きます:
“Bountiesという名前のPaper 1.21.4プラグイン: Vaultのエコノミーを使った/bounty set <player> <amount>、倒した人が報酬を受け取る、/bounty listで上位10件を表示、懸賞金は再起動しても保存される、メッセージはconfig.ymlに置く。”
Codexeでこれを生成