Minecraftサーバーでプラグインが使用できるようになる別名MODサーバーのSpigotですが、Minecraft 1.17 洞窟&崖アップデート(第一弾)のマイナーアップデートMinecraft 1.17.1にて利用可能になりました。
Minecraft 1.17ではJavaの最低要件が変更されておりサーバー運営者はOpenJDKなどのJavaランタイムをバージョン8から16へ切り替えてから本記事の操作が必要です。
Ubuntu系のディストリビューションをサーバーに使用している方はこの記事を読む前に下記記事を参考にJavaをアップデートしてください。
ビルド準備
Spigotを入手するにはBuildToolsと呼ばれるアプリケーションが必要です。
下記の記事で詳しいビルド方法を紹介しています。
ビルド
最近SpigotやBungeeCordのミラーサイトが最新と謳って古いバージョンのビルドツールを配布するサイトが確認されているようです。
SpigotやBungeeCordを利用する際は必ず公式を経由して行いましょう。
ビルド時の引数を下記のように指定するとSpigot 1.17.1がビルドされます。
java -jar BuildTools.jar --rev 1.17.1
ビルド方法を知りたい方はこちらを御覧ください。
更新内容
Minecraft 1.17.1は内部的に非常に重要なバグ修正を含んでいるためアップデートが推奨されています。
サーバーに関連するバグ修正が含まれた修正があったようですので、必ずアップデートしましょう。
引き続きMinecraft 1.17.1にはMinecraft 1.18で実装予定の内容が含まれており、Spigot APIも対応していますが、未実装のものであるため思わぬ不具合が発生する可能性を十分に理解した上でAPIへアクセスしましょう。
ワールド更新作業
Minecraft 1.17.1ではワールドに対して変更点はありませんが、Spigot 1.16.5などからSpigot 1.17.1にアップグレードする際は必ず下記のコマンドでのサーバー起動が必要です。
java -jar Spigot-1.17.1.jar --nogui --forceUpgrade
–forceUpgrade は初回起動時のみ必要な引数です。その後の起動では不要になります。
アップデート時には下記のようなログが流れれます。
[09:35:25] [Server thread/INFO]: 21% completed (1720 / 7854 chunks)...
[09:35:25] [Server thread/INFO]: 62% completed (4906 / 7854 chunks)...
Spigot 1.17以降で正しく動作しないプラグインがあったら
Java8からJava16に切り替わったことでプラグインが正しく動作しない場合はサーバーの起動引数に「–illegal-access=permit」を付けて起動させると動作する場合があるようです。
java -jar Spigot-1.17.1.jar --nogui --illegal-access=permit
開発者向け情報
開発者はMinecraft,SpigotがJava8からJava16へアップデートされた影響で、開発環境をJava16へ移行する必要があります。
下記記事を参考にJava16へアップデートを行い、開発環境のJava16移行を実施しましょう。