Laravel 9 に Laravel Excelをインストールしようとしたらエラー

投稿者: | 2022年10月5日

とあるプロジェクトでLaravelのバージョンアップを行いましたところ、下記のようにLaravel Excelをインストールしようとしたところエラーが発生しました。

composer require maatwebsite/excel

以下がエラー文です。

   Symfony\Component\ErrorHandler\Error\FatalError

  Declaration of Maatwebsite\Excel\Cache\MemoryCache::get($key, $default = null) must be compatible with Psr\SimpleCache\CacheInterface::get(string $key, mixed $default = null): mixed

  at vendor/maatwebsite/excel/src/Cache/MemoryCache.php:62
     58▕
     59▕     /**
     60▕      * {@inheritdoc}
     61▕      */
  ➜  62▕     public function get($key, $default = null)
     63▕     {
     64▕         if ($this->has($key)) {
     65▕             return $this->cache[$key];
     66▕         }


   Whoops\Exception\ErrorException

  Declaration of Maatwebsite\Excel\Cache\MemoryCache::get($key, $default = null) must be compatible with Psr\SimpleCache\CacheInterface::get(string $key, mixed $default = null): mixed

  at vendor/maatwebsite/excel/src/Cache/MemoryCache.php:62
     58▕
     59▕     /**
     60▕      * {@inheritdoc}
     61▕      */
  ➜  62▕     public function get($key, $default = null)
     63▕     {
     64▕         if ($this->has($key)) {
     65▕             return $this->cache[$key];
     66▕         }

      +1 vendor frames
  2   [internal]:0
      Whoops\Run::handleShutdown()
Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 255

どうも依存ライブラリである「simple-cache」の新しい物と互換性がとれない模様。
こちらのページを参考にして、下記のようにバージョン指定してインストールしたらエラーも解消されました。

composer require psr/simple-cache:^2.0
composer require maatwebsite/excel