php artisan serve 找不到 autoload.php

Posted

技术标签:

【中文标题】php artisan serve 找不到 autoload.php【英文标题】:php artisan serve can't find the autoload.php 【发布时间】:2018-11-10 22:33:09 【问题描述】:

解决方案: laravel new project-name 实际上给了我一个我忽略的错误。我有错误的php版本。它需要 phpv7.1.3 或更高版本。如果你没有它,它就不起作用。

遇到另一个问题:

我有一个指向旧版本 php 的系统环境变量 laravel 还需要 openssl 扩展和 mbstring 才能打开。从 php.ini 中取消注释

对于新手:如果您刚刚下载了 php 并解压缩了文件。它包含一个名为

的文件

安装.txt

必须阅读。它解释了一切。

我从他们的入门页面运行laravel new blog。当我尝试运行php artisan serve 时,出现以下错误:

警告:require(C:\Projects\laravel-projects\blog/vendor/autoload.php): failed to open stream: No such file or directory in C:\Projects\laravel-projects\blog\artisan on line 18

工匠文件指向

require __DIR__.'/vendor/autoload.php';

此目录不存在。即使我将它指向正确的目录,它仍然无法工作,因为我没有该文件夹的读取权限(因此它被拒绝)。

发生了什么,我该如何解决?

编辑:将上面提到的网址更改为:

C:\Users\sarkis\AppData\Roaming\Composer\vendor\autoload.php

出于某种原因,这非常有效。 现在。出现新错误

致命错误:未捕获的错误:在 C:\Projects\laravel-projects\blog\bootstrap\app.php:14 中找不到类 'Illuminate\Foundation\Application' 堆栈跟踪:#0 C:\Projects\laravel-projects\blog\artisan(21): require_once() #1 main 在第 14 行的 C:\Projects\laravel-projects\blog\bootstrap\app.php 中抛出

发现我没有所需的正确版本的 php。

【问题讨论】:

你运行 composer install 了吗? 是的,我做到了,供应商文件没有使用 Windows 10 btw 显示 @CharbelSarkis 更改安装目录的权限...您需要拥有、读取、写入、修改和在本地运行也需要执行...然后运行 ​​composer install 一切都应该没问题... 您运行的是 WAMPP/XAMPP 还是 ISS? Wamp。我有 wamp 和 xampp,我应该使用它们。 【参考方案1】:
    首次安装 Composer:composer install。 然后在 CMD 提示符下运行命令:composer dump-autoload

【讨论】:

我有作曲家。我就是这样安装 laravel composer global require laravel/installer @Charbel 好吧,该命令不会安装作曲家,因为您当然没想到能够通过作曲家安装作曲家,是吗?这将使用 composer 和项目根路径中的 composer.json 文件为您的项目安装由于某种原因丢失的所有“依赖项”。所以只需这样做:在项目的根路径中,运行composer install。请记住,您必须在项目的 composer.json 文件所在的路径中运行它,在这种情况下,它将始终是您的 laravel 项目的根目录。它将下载并安装所有依赖项。是的 @arm 这不是问题。显然,从那个时间点开始,laravel 需要 php 7.2。我有一个更旧的版本。【参考方案2】:

尝试运行 composer dump-autoload ,然后运行 ​​composer install

如果这不起作用,请尝试 composer update --no-scripts

【讨论】:

Generating optimized autoload files Class Illuminate\Foundation\ComposerScripts is not autoloadable, can not call post-autoload-dump script > @php artisan package:discover Fatal error: Class 'Illuminate\Foundation\Application' not found in C:\Projects\laravel-projects\blog\bootstrap\app.php on line 14 Script @php artisan package:discover handling the post-autoload-dump event returned with error code 255 这是我从composer dump-autoload得到的错误 php artisan serve 运行此命令后Fatal error: Class 'Illuminate\Foundation\Application' not found in C:\Projects\laravel-projects\blog\bootstrap\app.php on line 14 然后查看这篇文章 -> ***.com/questions/29764368/…【参考方案3】:

我是 Laravel 新手,对命令也有同样的困惑:

laravel new blog

没有供应商文件夹。

但我试过之后:

composer create-project --prefer-dist laravel/laravel blog

我发现供应商文件夹出现了。

也不知道为什么。

【讨论】:

【参考方案4】:

你可以尝试通过Composer Create-Project安装:

composer create-project --prefer-dist laravel/laravel blog

【讨论】:

这不会改变文件仍然指向空目录的任何内容。不得不将 url 更改为正确的,并得到一个新的错误【参考方案5】:

运行 laravel 时新建项目名称。它输出需要安装 php 7.1.3 或更高版本的文本。当前版本 5.6 不符合要求。它会中止而没有明显地给你一个错误。请务必下载 php 版本 7.1.3 或更高版本。还要检查您是否有早期版本的 php 的环境变量并删除它们。

注意:请务必阅读 php 下载中的 install.txt

【讨论】:

【参考方案6】:

检查您对以下文件夹的所有权限并授予 0777 权限

storage 0777
vendor 0777
bootstrap/cache 0777

然后再次运行

php artisan serve

【讨论】:

他使用 Windows。 我确实拥有文件的权限,只是供应商文件夹不存在,即使它确实需要的实际文件夹位于 appdata/...../vendor/autoload

以上是关于php artisan serve 找不到 autoload.php的主要内容,如果未能解决你的问题,请参考以下文章

php artisan 迁移错误找不到驱动程序

Lumen php artisan config:找不到缓存

php artisan migrate:[PDOException] 找不到驱动程序

在 Laravel artisan serve Https 中添加 SSL 证书

php artisan serve - 如何让mysql运行

Laravel:PHP Artisan Migrate 抛出 PDO 异常:找不到驱动程序(Postgres)