From 84ef5847d64c242ab0ab94209fb6deb9c67a8f07 Mon Sep 17 00:00:00 2001 From: Jubayed Bhuiyan <70032786+jubayed@users.noreply.github.com> Date: Tue, 11 Jun 2024 05:26:45 +0600 Subject: [PATCH] Fix: Correct vendor directory path resolution for Laravel Artisan Tinker command --- src/Console/TinkerCommand.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Console/TinkerCommand.php b/src/Console/TinkerCommand.php index 07ad30d..87cc7d3 100644 --- a/src/Console/TinkerCommand.php +++ b/src/Console/TinkerCommand.php @@ -2,6 +2,7 @@ namespace Laravel\Tinker\Console; +use Composer\InstalledVersions; use Illuminate\Console\Command; use Illuminate\Support\Env; use Laravel\Tinker\ClassAliasAutoloader; @@ -60,7 +61,12 @@ public function handle() $shell->addCommands($this->getCommands()); $shell->setIncludes($this->argument('include')); - $path = Env::get('COMPOSER_VENDOR_DIR', $this->getLaravel()->basePath().DIRECTORY_SEPARATOR.'vendor'); + $vendorDir = $this->getLaravel()->basePath().DIRECTORY_SEPARATOR.'vendor'; + if(!is_dir($vendorDir)){ + $vendorDir = realpath(InstalledVersions::getRootPackage()['install_path']) . DIRECTORY_SEPARATOR.'vendor'; + } + + $path = Env::get('COMPOSER_VENDOR_DIR', $vendorDir); $path .= '/composer/autoload_classmap.php';