広告

bitFlyer ビットコインを始めるなら安心・安全な取引所で

カウンター

  • 47304総訪問者数:
  • 17今日の訪問者数:
  • 27昨日の訪問者数:
  • 27一日あたりの訪問者数:
  • 0現在オンライン中の人数:
  • 2014年9月21日カウント開始日:

マインクラフト1.9サーバ対応メモ

注意:ここに掲載されている情報は、2016/3/6時点の情報です。最新ではないかもしれないので、ご注意を!

私の管理しているAlicornサーバAvalonサーバをマイクラ1.9ベースに上げましたが、1.9化で発生していた問題等々について掲載しておきます。サーバプログラムはspigotを使ってます。もちろんバニラサーバです。

なお、解決方法についてはプラグインの対応を待つ以外に、プログラムのソースコードを入手して解決する手段がありますが、ここにはエラーとプログラムの修正も簡単に記述しています。プログラムの修正方法はJavaの例外の読み方や直し方がわかる人向けにざっくりとしか書いてません。

(ほぼ私的な)リンク

 

プラグイン別対応状況

個人的に確認したプラグインです。(一部省略)
「稼働状況」は記載されている導入バージョンの動作状況で、△については備考を参照して下さい。×は動いてません。

○(動く)でも、私がソースコードをGetして動くように手直しした物(自前修正版と書かれている箇所)は、公式ページからjarをGetしても動かないかもしれません。
バージョンは「v」がバージョンの略、「b」はビルドの略です。「b」については各プラグインのJenkinsからGetしてる場合が多いです。

プラグイン名 導入バージョン 稼働状況 備考
BungeeCord b1130  
spigot 03/05時点でコンパイル  
AntiCreeper v4.17  
AntiWither v0.6 機能はするけど、エラーが出ます(困らない程度)
ArmorStandEditor v1.8-0.1.6BETA(自前修正版) △? 1.9で一部のアイコンが化けるけど動く。あと、1.8の時にソースに手直しした版を使ってるので、公式版は動くかわからない
Bankcraft v2.4.2 × エラー多発(直す気が無かったので、詳細は調べてないです)
BlockHat v1.12  
BottledExp v1.7.3  
CF v1.2016.01.05(自前修正版) ソースコードをゲットし、リコンパイルすると動く?
ChairsReloaded b149 ビルド#145以降であれば1.9に対応してます
ChestCommands v3.1.3 古いVerでも動くけど、1.9版のプラグインも公開されてます
ChestShop v3.8.12  
ChestShopLogger v0.1.8Beta  
Clearlag v2.8.4  
CookieMonster v1.8 × エラー多発(直す気が無かったので、詳細は調べてないです)
CountryLoginMessage v1.6.3  
CustomSkulls v0.2  
dynmap v2.3-SNAPSHOT 動かないですが、作者が暫定的に動かせるようにしたdynmap-2.3を海外の掲示板にアップしてます
Dynmap-Towny v0.70  
Dynmap-WorldGuard v0.80  
EasyJetpack v1.3 × エラー多発(直す気が無かったので、詳細は調べてないです)
EchoPet b61 × 1.9では動かないし、対応版も出てません。
2016/3/19追記:開発中で1.9対応版がありました。
EpicBossGoldEdition バージョン不明(自前修正版) 1.9対応版はありません。ソースコードを入手すれば動きますが、既にソースコードも公開されてなく、入手不可です。
Essentials v2.x-SNAPSHOT-b13 古いVerでも動くけど、1.9版のプラグインも公開されてます
FlyPayment v3.2  
FoundDiamonds v3.7.2 × エラーがほとんど出ませんが、機能していません。
FrameProtect v2.5  
GeoIPTools v1.0.2  
HawkEye v1.6.2-b56  
HolographicDisplays v2.1.11 v2.1.11で1.9に対応してます
HomeSpawnPlus v2.0.1-SNAPSHOT-b634 動くけど、サーバ停止時にエラーがでます
Jobs v2.63.1 動きません。Jobs Rebornを使いましょう(Jobsの設定の移植が必要です)
LegendaryMessages v6.0.2  
Lottery Unofficial-1.1.0 動きません。非公式バージョン(Unofficial 1.1.0)で動きます
LunaChat v2.7.9 動きますが、連携プラグインでエラーが出ている場合に動きません。ウチではdynmapが非対応だった時に止まりました。
LWC v4.5.0-SNAPSHOT-b938(自前修正版) 動くけど、1.9版のプラグインが公開されてます。ただ、過去にアイテムDupeの不具合があり、自前で直した版を使ってるので、最新版は動作確認してません。
MCBans v4.3.5  
mcMMO b92 動くけど、1.9版のプラグインも公開されてます
MobArena v0.97.1  
Modifyworld v1.19.7  
MonetaryDeathPenalty v2.23  
Multiverse-Core v2.5_b716 古いVerでも動くけど、1.9版のプラグインも公開されてます
Multiverse-Portals v2.5-b724 動きますが、ゲートは基本的に不安定。バージョンを上げたら余計に不安定になったので、据え置きにしてます。
MyPet v1.3.2-SNAPSHOT_b862 ビルド#848くらいで1.9に対応してますが、頻繁にバージョンアップされているので、注意が必要ですね
OpenInv v2.3.5 v2.3.5で1.9に対応してます
PermissionsEx 1.23.4 古いVerでも動くけど、1.9版のプラグインも公開されてます
PlgLogCmd v2.0  
PluginManager v1.2.2  
ProtocolLib b243 古いVerでも動くけど、1.9版のプラグインも公開されてます。ビルド#244ではエラーが出たので、#243に下げて導入しました。
Questioner v0.6  
RecipeManager v2.7.2 古いVerでも動くけど、1.9版のプラグインも公開されてます。ただ、バージョンを上げると、設定ファイルのエラーも出るので、修正が必要です。
RegionForSale v2.6  
RunAs v1.1  
ScoreboardStats v0.9.7 v0.9.8は1.9に対応してます
ServerSigns v4.4.1  
SilkSpawners b318 ビルド#317以降であれば1.9に対応してます。これより古いバージョンだとスポナが書き換わり、バージョンを上げても復旧不可能になる場合があります。
SimpleSort v1.6  
SimpleVoteListener v2.6  
SkylandsPlus_andrewkm 03/04時点でコンパイル SkylandsPlusは元々1.8にすら対応してません。Andrewkmという人が対応版を出してます。1.9に対応したソースも出してますが、jarは無いのでコンパイルが必須です。
Stats v2.0.2(自前修正版) 1.9対応版は無いし、エラーを多量に吐きます。ソースコードを入手して直せば動くようです。
TacTools v1.9-1.0.8 オリジナルプラグインです。/titleコマンドの仕様が1.9で変更されてたので修正が必要でした。
Tombstone v1.3.8(自前修正版) 1.9対応版は無いし、エラーを多量に吐きます。ソースコードを入手して直せば動くようです。
Towny v0.90.0.0  
TownyChatSupport v1.0  
TownyNameUpdater v1.0  
TreeAssist v5.9.11(自前修正版) 1.9対応版はありません。エラーを吐くし、どの木を切っても植えられる苗がオークの苗になります。その部分のプログラムを直せば動きます。
Vault v1.5.6  
Votifier v1.9  
WorldBorder v1.8.5 古いVerでも動くけど、1.9版のプラグインも公開されてます
worldedit v6.1.1-SNAPSHOT-dist 古いVerでも動くけど、1.9版のプラグインも公開されてます
worldguard v6.1.2-SNAPSHOT-dist 6.1.2(開発版)が1.9に対応してます。

 

spigotサーバについて

  • 瞬間移動の為のゲートをMultiverse-Portalsで作ってますが、ゲートをくぐった時の動きが安定しません。「moved too quickly!(このキャラの移動速度が異常に速い)」メッセージが良く出ます。特にエンドポータルベースのゲートで多発してます(プラグイン自体の問題というより、サーバの挙動が変わったっぽい?と推測)

発生しがちなエラー

java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers

表示例

[23:59:22] [Server thread/ERROR]: Error occurred while disabling HomeSpawnPlus v2.0.1-SNAPSHOT-b634 (Is it up to date?)
java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
~以下略

プラグインのエラーで一番多い事例です。上記のERRORの後の赤字の部分がプラグイン名なので、どのプラグインで発生しているかはこれで判断して下さい。

このエラーの解決策は、プラグインが対応するのを待つか、リコンパイルしかありません。

発生する原因は、「org.bukkit.Server.getOnlinePlayers」というAPIの仕様変更で、戻り値が変わっている為です。このAPIはログイン中のプレイヤーを取得するという物なので、非常によく使われています。1.8で動いていたプラグインがそのまま1.9でもロードでしますが、この命令が呼ばれる度にエラーを吐きます。自前で修正可能な人は、プラグインのソースコードをGetし、参照するSpigot/Bukkitライブラリを1.9ベースに差し替えてリコンパイルするだけでだいたい直ります。
※直らない場合は、戻り値の処理方法を確認/修正が必要です。

java.lang.ClassNotFoundException(java.lang.NoClassDefFoundError): org.bukkit.craftbukkit.v1_8_R3(net/minecraft/server/v1_8_R3).・・・

[Server thread/ERROR]: Error occurred while enabling EpicBoss_Gold_Edition v0.1.0 (Is it up to date?)
java.lang.NoClassDefFoundError: org/bukkit/craftbukkit/v1_8_R3/inventory/CraftItemStack
at me.ThaH3lper.com.Libs.AttributeHandler.addHealth(AttributeHandler.java:23) ~[?:?]
~略~
Caused by: java.lang.ClassNotFoundException: org.bukkit.craftbukkit.v1_8_R3.inventory.CraftItemStack
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:91) ~[spigot-1.9.0-R0.1-SNAPSHOT-20160301.jar:git-Spigot-604e046-69e196f]
~略~

これも比較的多いエラーの事例です。例のごとく上記の一番始めのERRORの後の赤字の部分がプラグイン名なので、どのプラグインで発生しているかはこれで判断して下さい。

このエラーの解決策は、プラグインが対応するのを待つか、プログラムを修正しないと直りません。

エラーの内容に「v1_8_(v1_7やそれ以前の場合も有り)」と有るとおり、これはSpigotやBukkitの公開されたAPIではなく、それぞれのモジュールのメソッドへ直接アクセスしようとしており、それが無い為です。APIへアクセスしているのであれば、前述のgetOnlinePlayersのようにAPI自体の仕様変更が無い限り、サーババージョンを上げてもエラーにはなりません。

修正方法は、前述の通り、最新のライブラリを読み込む必要がありますが、以下の通りimport等でバージョン指定でベタ書きになってるので、これを全て修正しなければなりません。

import net.minecraft.server.v1_8_R3.NBTBase;
import net.minecraft.server.v1_8_R3.NBTTagCompound;
import net.minecraft.server.v1_8_R3.NBTTagList;

コメントを残す

これらのHTMLタグが利用可能です

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

  

  

  

Time limit is exhausted. Please reload CAPTCHA.