Mac 系统的终端运行 composer dump-autoload 正常, VS code 集成终端报错,求解?

2022-05-22 16:45:54 +08:00
 freadman

我的程序 laravel8 ,PHP 是 8.0.8 ,安装了 memcached 扩展,php -v 显示版本 8.0.8 ,php -m 可以看到 memcached 扩展。

同样的命令 composer dump-autoload ,系统的终端中执行是正常的,在 VS code 集成终端中就报错。难不成 vscode 还有什么特殊的配置?并且我在集成终端和系统终端运行 php -v 、php -m 结果是一样的。

报错信息:

Class "Memcached" not found

at vendor/laravel/framework/src/Illuminate/Cache/MemcachedConnector.php:69 65| * @return \Memcached 66| */ 67| protected function createMemcachedInstance($connectionId) 68| {

69| return empty($connectionId) ? new Memcached : new Memcached($connectionId); 70| } 71| 72| /** 73| * Set the SASL credentials on the Memcached connection.

  +9 vendor frames 

10 [internal]:0 Spatie\Permission\PermissionRegistrar::__construct(Object(Illuminate\Cache\CacheManager))

  +14 vendor frames 

25 [internal]:0 Illuminate\Foundation\Application::Illuminate\Foundation{closure}(Object(Spatie\Permission\PermissionServiceProvider)) Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 1

1301 次点击
所在节点    PHP
3 条回复
FrankAdler
2022-05-23 02:00:52 +08:00
环境变量不一致,导致调用的不是同一个 php 吧
dzdh
2022-05-23 08:28:36 +08:00
composer.json 里加一个 script. php -i
freadman
2022-05-23 10:25:25 +08:00
@FrankAdler 确实是这个问题,安装了多个 PHP 。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/854496

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX