Laravel Telescope 失败,无法打开流:没有这个文件或目录 TelescopeServiceProvider.php

9
我正在尝试使用Laravel官方文档中的Telescope包,并且我已经按照前两个步骤进行了操作:
composer require laravel/telescope

并且

php artisan telescope:install

在我的命令行中,一切都进行得很顺利,直到安装时出现了错误:

ErrorException:file_get_contents(path\app\Providers/TelescopeServiceProvider.php:打开流程失败:在vendor\laravel\telescope\src\Console\InstallCommand.php中没有这样的文件或目录

当然,我谷歌了这个问题,并找到了this,我检查了一下我的提供者文件夹是否存在。它确实存在,但TelescopeServiceProvider.php确实不在那里。我尝试再次运行命令php artisan telescope:install,它提供了以下消息:

Telescope脚手架安装成功。

我认为这很奇怪,但好吧,我继续按照文档的下一步操作:

  • 安装Telescope后,您还应该运行migrate命令: php artisan migrate

所以我运行了那个命令,我得到了以下消息:

没有要迁移的内容。

很明显这个过程并没有成功。我在“虚假”安装成功信息之后检查了TelescopeServiceProvider是否已存在,但它仍然不存在。我做错了什么?如何解决这个问题?

我认为望远镜安装失败了,可能是因为权限问题,Laravel无法在您的app/Providers文件夹中创建“TelescopeServiceProvider”类... 删除该软件包,运行“composer update”,然后再次运行该过程(require->install)... 如果在“php artisan telescope:install”之后您看不到提供程序类、公共文件夹内的资产和配置文件,则可能存在文件系统权限问题。 - IlGala
你可以尝试从Github下载缺失的服务提供者,手动将其添加到Providers目录中,然后运行telescope:install - Bram Verstraten
其他人正在解决这个问题,请查看GitHub链接以获取更多信息:https://github.com/laravel/telescope/issues/732#issuecomment-542988625 - Loko
3个回答

5
尝试更新Telescope。
composer update --prefer-source

尝试删除Telescope,然后重新安装软件包,因为似乎安装过程中出现了软件包损坏的情况:
composer remove laravel/telescope
composer require laravel/telescope

尝试:

composer dump-autoload

或者:

artisan cache:clear

更新或更改 composer.json 后,需刷新所有内容。

这对我仍然没有任何帮助。在安装了Telescope之后,我仍然没有要迁移的内容。看起来好像安装出了问题,但它仍然继续进行。 - Loko
@Loko 如果你执行 composer update --prefer-source 会怎么样? - Script47
不行。我已经重新安装了它,但仍然显示“没有要迁移的内容”的消息。 - Loko
这一次没有错误。看起来第一次搞砸了一切。 - Loko
请验证您的迁移表中是否有望远镜记录?如果有,请在重新安装之前将其删除。 - Bram Verstraten
显示剩余8条评论

1

关于Telescope Github Issues的问题:

Telescope目前还不支持Laravel 6。许多人都遇到了同样的问题。解决方法是查看这个问题。虽然这只是一个临时解决方案,而不是真正的解决方法。


0

使用 composer dump-autoload

和:

artisan cache:clear

但是

安装 composer require brick/math

它可以工作


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接