質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

Q&A

解決済

1回答

1357閲覧

vendar配下にパッケージはあるのに、OutOfBoundsException thrown in phar .... Package "" is not installed エラー

hiro..

総合スコア79

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

0グッド

0クリップ

投稿2023/03/15 01:16

編集2023/03/15 01:34

実現したいこと

phpstanを実行したいです。

前提条件

既存のLaravelプロジェクトに、新たにphpstanを導入しました。
composer install にてlockファイルのパッケージはインストール済みです。

発生している問題・エラーメッセージ

./vendor/bin/phpstan analyse

を実行すると、実行開始直後に以下のエラーとなります。

OutOfBoundsException thrown in phar:///プロジェクトディレクトリ/vendor/phpstan/phpstan/phpstan.phar/vendor/composer/InstalledVersions.php on line 161 while loading bootstrap file /プロジェクトディレクトリ/vendor/nunomaduro/larastan/bootstrap.php: Package "psr/simple-cache" is not installed

エラーメッセージに「Package "psr/simple-cache" is not installed」とありますが、
vendor配下にパッケージがあることは確認できました。

イメージ説明

該当のソースコード

composer.lock

1 { 2 "name": "phpstan/phpstan", 3 "version": "1.10.6", 4 "source": { 5 "type": "git", 6 "url": "https://github.com/phpstan/phpstan.git", 7 "reference": "50d089a3e0904b0fe7e2cf2d4fd37d427d64235a" 8 }, 9 "dist": { 10 "type": "zip", 11 "url": "https://api.github.com/repos/phpstan/phpstan/zipball/50d089a3e0904b0fe7e2cf2d4fd37d427d64235a", 12 "reference": "50d089a3e0904b0fe7e2cf2d4fd37d427d64235a", 13 "shasum": "" 14 }, 15 .......略 16 17 { 18 "name": "nunomaduro/larastan", 19 "version": "2.5.1", 20 "source": { 21 "type": "git", 22 "url": "https://github.com/nunomaduro/larastan.git", 23 "reference": "072e2c9566ae000bf66c92384fc933b81885244b" 24 }, 25 "dist": { 26 "type": "zip", 27 "url": "https://api.github.com/repos/nunomaduro/larastan/zipball/072e2c9566ae000bf66c92384fc933b81885244b", 28 "reference": "072e2c9566ae000bf66c92384fc933b81885244b", 29 "shasum": "" 30 }, 31    ...... 略

試したこと

こちらなどを参考に、

・composerのバージョンをアップデート 2.0.1 -> 2.5.4
・composer dump-autoload
・再度 composer install

を試しましたが、結果は変わりませんでした。

他には、どこを確認すれば良いのでしょうか。
ご教示いただけますと幸いです。

補足情報(FW/ツールのバージョンなど)

PHPStan - PHP Static Analysis Tool 1.10.6
larastan version 2.5.1

Laravel Framework 9.48.0
PHP 8.0.27
composer version 2.5.4

追記

設定ファイル(phpstan.neon.dist)に記載の
以下の箇所を削除すると、エラーが消えphpstanが実行されました。

includes: - ./vendor/nunomaduro/larastan/extension.neon

larastanの設定がおかしいということでしょうか。
もう少し調べてみます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

このエラーは、LaravelプロジェクトでLarastanを使用しているために発生しています。Larastanは、PHPStanのLaravel用の拡張機能であり、Laravelアプリケーションのコードを解析するために使用されます。

エラーの原因は、必要なパッケージである「psr/simple-cache」がインストールされていないことです。このパッケージは、Composerのautoload.phpファイルで使用されます。

次の手順で解決しませんか?

Composerで「psr/simple-cache」をインストールするために、以下のコマンドを実行します。

shell

1composer require psr/simple-cache

autoload.phpファイルを再生成します。

shll

1composer dump-autoload

再度、phpstanを実行してみてください。

shll

1./vendor/bin/phpstan analyse

これで、問題が解決するはずです。

投稿2023/03/15 06:24

kairi_yasunnde

総合スコア18

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hiro..

2023/03/15 10:36

コメントいただきありがとうございます! psr/simple-cache はすでにインストール済みだという認識でした。 (vendor配下に存在していたため) ですが、バージョンを変えてインストール、再度最新バージョンでインストール、 と行なったところ、無事stanが実行できるようになりました。 ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問