所以我想进入Laravel,这是我第一次使用Vagrant,所以这是我的问题:
我已经完成了Laravel Homestead introduction的工作,并设置了开发框,一切似乎都可以正常工作,并且确实看到了Laravel默认应用。结束这一天,我使用{{ 1}},并尝试像以前一样使用vagrant halt
重新启动,然后我收到了
“(!!)致命错误:未捕获RuntimeException:门面根目录没有 被设置。在 /home/vagrant/code/laravel/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php 在234行上”
尝试访问我的Laravel应用时显示的消息。由于这对于一个全新的项目也会发生,因此我认为我缺少一些非常基本的东西,有人可以告诉我如何处理Vagrant,以便在重新启动虚拟机后仍可以到达我的项目吗?
除了最初通过composer创建Laravel应用程序外,我没有编写任何代码,该错误不会弹出,因为我试图使用某些东西并且做错了。我正在使用新应用程序的默认状态,它会弹出。
答案 0 :(得分:6)
之所以会出现此问题,是因为通过无业游民安装的默认laravel/homestead
框设置为v8.0.0-alpha2
,这似乎很坏。您将需要重新安装该盒子并删除当前盒子。
参考:https://github.com/laravel/homestead/issues/1178
cd ~/Homestead
vagrant destroy
vagrant box remove laravel/homestead --box-version=8.0.0-alpha2
vagrant box add laravel/homestead --box-version=7.2.1
vagrant up
答案 1 :(得分:1)
与@Cody Moorhouse对我的回答一样
但是在我的情况下,直到我做到这一点才起作用:
在运行之前,我向homstead.ymal添加了版本:7.2.1
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox
version: 7.2.1
authorize: ~/.ssh/id_rsa.pub
然后我编辑了compser.json并添加了
"extra_data":{
"box":{
"name":"laravel/homestead",
"provider":"virtualbox",
"version":"dev-release"
}
},
强制流浪汉使用版本7.2.1
然后在宅基目录上吃午饭,更新
在那无所事事的工作完成之后。
答案 2 :(得分:0)
将VirtualBox从v5升级到v6为我解决了此问题。我正在使用OSX 10.15 Catalina。
升级VirtualBox之后,我不必调整我的宅基地盒的版本。
建议将升级作为此github问题的修补程序:https://github.com/laravel/homestead/issues/1178
答案 3 :(得分:0)
宅基定期发布“ alpha” /“ beta”框进行测试,这可能会干扰您在宅基设置过程中运行的“ vagrant box add”命令。如果遇到问题,可以运行vagrant up命令,并且当Vagrant尝试启动虚拟机时,将下载正确的框。
因此跳过步骤vagrant box add laravel/homestead
尝试执行以下操作:
vagrant destroy
vagrant up
Vagrant将为您下载并选择正确的laravel / homestead版本。