ConsoleChat

ConsoleChat 3.1.0

PJZ9n

Active member
4月 13, 2018
55
37
18
不具合についての報告です。
エラーの発生について当方プラグインの利用者より報告がありました。
こちらでプラグインを確認させて頂いたところ、SCCプラグイン側にuse文の誤りがありました。
こちらの議論にクラッシュタンプなど詳細な情報があります。
誤:use pocketmine\Plugin\PluginBase;
正:use pocketmine\plugin\PluginBase;
修正が必要と思われるクラスは、saito\SaitoConsoleChat\Mainクラスと、saito\SaitoConsoleChat\Form\inputFormクラスです。
また、inputFormクラスのファイル名や定義なども大文字小文字が統一出来ていない部分があるので、修正をお勧めします。
名前空間の大文字小文字はPHPの言語仕様としては区別しませんが、PMMPで使用されているsrcディレクトリ以下に適用されるcomposerオートロード仕様によると、区別するようです。そのため、プラグインの読み込み順番によってオートロードが正常に出来たり出来なかったりする問題が発生します。
正常に動作するパターン:
  1. 別のプラグインでpocketmine\plugin\PluginBaseクラスを使用する(composerのオートローダによって正常にロードされる)
  2. こちらのプラグインでpocketmine\Plugin\PluginBaseクラスを使用する(既に別プラグインによりクラスがロードされているので、PHPの言語仕様に従い正常に使用出来る)
正常に動作しないパターン:
  1. こちらのプラグインでpocketmine\Plugin\PluginBaseクラスを使用する(クラスがロードされていないため、composerのオートローダによるオートロードを試みますが、ここでは大文字小文字が区別されることによりロードが正常に行えない)
  2. 別のプラグインが読み込まれる前にクラッシュが発生する
よろしくお願い致します。
 
最後の編集:
  • Like
Reactions: saitosan3110

saitosan3110

Member
5月 25, 2020
6
7
3
不具合についての報告です。
エラーの発生について当方プラグインの利用者より報告がありました。
こちらでプラグインを確認させて頂いたところ、SCCプラグイン側にuse文の誤りがありました。
こちらの議論にクラッシュタンプなど詳細な情報があります。
誤:use pocketmine\Plugin\PluginBase;
正:use pocketmine\plugin\PluginBase;
修正が必要と思われるクラスは、saito\SaitoConsoleChat\Mainクラスと、saito\SaitoConsoleChat\Form\inputFormクラスです。
また、inputFormクラスのファイル名や定義なども大文字小文字が統一出来ていない部分があるので、修正をお勧めします。
名前空間の大文字小文字はPHPの言語仕様としては区別しませんが、PMMPで使用されているsrcディレクトリ以下に適用されるcomposerオートロード仕様によると、区別するようです。そのため、プラグインの読み込み順番によってオートロードが正常に出来たり出来なかったりする問題が発生します。
また、プラグインの読み込み順については不定のため、正常に動作する時としない時があります。
正常に動作するパターン:
  1. 別のプラグインでpocketmine\plugin\PluginBaseクラスを使用する(composerのオートローダによって正常にロードされる)
  2. こちらのプラグインでpocketmine\Plugin\PluginBaseクラスを使用する(既に別プラグインによりクラスがロードされているので、PHPの言語仕様に従い正常に使用出来る)
正常に動作しないパターン:
  1. こちらのプラグインでpocketmine\Plugin\PluginBaseクラスを使用する(クラスがロードされていないため、composerのオートローダによるオートロードを試みますが、ここでは大文字小文字が区別されることによりロードが正常に行えない)
  2. 別のプラグインが読み込まれる前にクラッシュが発生する
よろしくお願い致します。
申し訳ございません。更新しておきます。