😸
旧バージョンのLaravelでComposer2を使う方法
kylekatarnls/update-helperをアップデートする
------------------- ↓ 前書きはここから ↓-------------------
なんかよくわからないエラーが出た。
Fatal error: Class UpdateHelper\ComposerPlugin contains 2 abstract methods
and must therefore be declared abstract or implement the remaining methods
(Composer\Plugin\PluginInterface::deactivate, Composer\Plugin\PluginInterface::uninstall)
in /home/dozo/vendor/kylekatarnls/update-helper/src/UpdateHelper/ComposerPlugin.php on line 11
単純にcomposer installを打ったつもりが、
インストールすらままならない状態。
(゜-゜) なんやこれ
Composer2でLaravelのcomposer installを実行すると発生するらしい。
調べてみるとkylekatarnls/update-helperの1.2.0がコケている。
これのバージョンを1.2.1以上にすればよさそうだ。
ただ、composer installはバージョン依存関係を維持するために使っているので、
差分も一応確認しておこう。
+ public function deactivate(Composer $composer, IOInterface $io) {}
+
+ public function uninstall(Composer $composer, IOInterface $io) {}
+
(^_^;)・・・定義漏れってこと?
あげちゃうか。
ヾ(・ω<)ノ" 三三三● ⅱⅲ コロコロ♪
------------------- ↓ 本題はここから ↓-------------------
単純にcomposer install
インストールをやり直すのでvendorを削除。
プラグイン等を無効にしてインストールをする。
rm -Rf vendor
composer install --no-plugins
composer.lockの更新
kylekatarnls/update-helperをアップデートして、
composer.lockを更新する。
composer update kylekatarnls/update-helper --no-plugins
改めてcomposer install
vendorディレクトリをいったん消して、
改めてcomposer installを実行
rm -Rf vendor
composer install
問題なさそうだ
Discussion