LaravelのExcel対応の際にLaravel-Excelを導入しようとした時にエラーになった件
Laravelを使っていて、
Excelファイルを取得するために、
他の環境であれば、問題ない導入処理だったが、
別の環境だとエラーがなぜか発生した。
これを調べて対応した時のメモ。
前提:Laravel-Excelを使用
Excelファイルの読み取りに関しては、
Laravel-Excelというのを使っていた。
この「Laravel-Excel」を、
別の環境でも導入しようとしていた。
実際の使用方法は、
以下のGithubなどを参考。
エラー内容
エラーとしては、
導入しようとした時に、
以下のエラーが発生した。
Updating dependencies
Your requirements could not be resolved to an installable set of packages.
Problem 1
- maatwebsite/excel[3.1.36, ..., 3.1.x-dev]
require phpoffice/phpspreadsheet ^1.18
-> satisfiable by phpoffice/phpspreadsheet[1.18.0, ..., 1.22.0].
- maatwebsite/excel[3.1.0, ..., 3.1.25]
require php ^7.0
-> your php version (8.1.0) does not satisfy that requirement.
- maatwebsite/excel[3.1.26, ..., 3.1.35]
require illuminate/support 5.8.*|^6.0|^7.0|^8.0
-> found illuminate/support[v5.8.0, ..., 5.8.x-dev, v6.0.0, ...,
6.x-dev, v7.0.0, ..., 7.x-dev, v8.0.0, ..., 8.x-dev]
but these were not loaded,
likely because it conflicts with another require.
- phpoffice/phpspreadsheet[1.18.0, ..., 1.22.0]
require psr/simple-cache ^1.0
-> found psr/simple-cache[1.0.0, 1.0.1]
but the package is fixed to 3.0.0 (lock file version)
by a partial update and that version does not match.
Make sure you list it as an argument for the update command.
- Root composer.json requires maatwebsite/excel ^3.1
-> satisfiable by maatwebsite/excel[3.1.0, ..., 3.1.x-dev].
Use the option --with-all-dependencies (-W) to allow upgrades,
downgrades and removals for packages currently locked to specific versions.
You can also try re-running composer require with an explicit version constraint,
e.g. "composer require maatwebsite/excel:*" to figure out
if any version is installable,
or "composer require maatwebsite/excel:^2.1"
if you know which you need.
というエラーが発生していた。
エラー調査
各種バージョンの整合性でうまくいっていないようなので、
エラー表示の中の、
Use the option --with-all-dependencies (-W) to allow upgrades,
downgrades and removals for packages currently locked to specific versions.
を参考にして、
オプションをつけて実行。
composer require maatwebsite/excel --with-all-dependencies
これを実行すると、
$ composer require maatwebsite/excel --with-all-dependencies
Using version ^3.1 for maatwebsite/excel
./composer.json has been updated
:
Updating dependencies
Lock file operations: 7 installs, 2 updates, 0 removals
:
- Locking maatwebsite/excel (3.1.38)
:
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 7 installs, 2 updates, 0 removals
:
- Installing maatwebsite/excel (3.1.38): Extracting archive
:
Publishing complete.
このようなログを残しながら、
うまくインストールの処理が完了。
スキルを使って、就職/転職/副業する時のサイト
プログラミングのスキルなどを、自分なりに高めた上で、
自分のスキルをアピールして就職や転職を行い、年収をあげるか、
副業という形で、年収にプラスアルファの稼ぎを増やすことはできます。
まずはできる範囲で取り組むことで、
少しずつ、経験値も増え、自分のスキルが収入につながるのでおすすめです。