Composer 在安装新的 laravel 库时遇到问题

Posted

技术标签:

【中文标题】Composer 在安装新的 laravel 库时遇到问题【英文标题】:Composer having trouble with installing fresh laravel libraries 【发布时间】:2018-12-26 20:01:09 【问题描述】:

我正在使用 composer 安装新的 Laravel 5.6 环境,但每次我执行“Laravel new projectName”时,当我运行 composer install 或 composer update 时,它​​都会返回此错误:

无法扫描里面的类 没有出现的“路径/到/供应商/hamcrest/hamcrest-php/hamcrest” 既是文件也不是文件夹

经过数小时的修复尝试,我进行了测试,手动创建了 hamcrest 文件夹。当我再次运行composer install时,它指出composer无法读取“psysh”库中的文件,当我去检查它时,该文件夹完全是空的。我再次下载文件并将它们放在文件夹中,只是为了测试它是否会运行。完成此操作并运行 composer install 后,弹出此错误

Illuminate\Foundation\ComposerScripts::postAutoloadDump @php artisan 包:发现

在 ProviderRepository.php 第 208 行: 找不到类“Laravel\Tinker\TinkerServiceProvider”

Script @php artisan package:discover 处理 post-autoload-dump 事件返回错误代码 1

我不知道我在哪里搞砸了,因为这是 composer + laravel 的全新安装。我运行了作曲家诊断,但一切正常。有谁是我的错误?

【问题讨论】:

删除composer.lockvendor 目录。然后composer install 它不起作用。我创建了一堆新的 laravel 实例,并且出现了同样的问题。 尝试全局重新安装 Laravel 安装程序。 我试过了。没有运气。当我卸载并重新安装时,会发生同样的错误 嗨@FernandoAlmeida,你有解决方案吗?我也面临类似的问题。 【参考方案1】:

Laravel Tinker

composer 需要 laravel/tinker

安装包后,您应该将Laravel\Tinker\TinkerServiceProvider::class 添加到您的config/app.php 配置文件中的providers 数组中。

然后在控制台中,制作一个

composer dump-autoload

【讨论】:

我试过那个解决方案,composer require laravel/tinker 返回相同的错误:> Illuminate\Foundation\ComposerScripts::postAutoloadDump > @php artisan package:discover In ProviderRepository.php line 208: Class 'Laravel\Tinker \TinkerServiceProvider' 未找到 您是否将此Laravel\Tinker\TinkerServiceProvider::class 包含在您的 config/app.php 中的 providers 数组中?并尝试composer dump-autoload --no-scripts 我尝试将类包含在数组中,但没有成功。 composer dump-autoload --no-scripts 运行没有问题

以上是关于Composer 在安装新的 laravel 库时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章

如何通过Composer安装Laravel

新的 laravel/homestead 配置中的 GitHub OAuth 令牌的 Composer 错误

laravel 表单和HTML扩展包

没有composer可以安装或者正常使用laravel么

通过 composer 创建新的 laravel 项目失败,错误类 ArrayLoader not found

laravel 安装 composer 安装