我最近通过composer安装了Laravel 5。我尝试使用artisan创建一个新的控制器,我得到以下错误:

引导/ . . /供应商/ autoload.php。无法打开流:没有这样的文件或目录。“vendor”文件夹不存在。

我遗漏了什么吗?


当前回答

我们得到一个错误,因为我们在我们的项目中缺少供应商文件夹,供应商目录包含我们的Composer依赖项。

需要/供应商文件夹,因为所有的包都在那里,包括Laravel使用的所有类,问题可以在以下两个步骤后解决:

composer update --no-scripts 
composer update

——no-scripts:跳过在composer.json中定义的脚本执行 composer update:这将检查项目中需要的库的新版本。如果找到了一个较新的版本,并且它与编写器中定义的版本约束兼容。Json文件,它将取代以前安装的版本。作曲家。锁文件将被更新以反映这些变化。

这两个命令,我们将在我们的项目中重新创建供应商文件夹,之后我们的项目将顺利工作。

其他回答

我也遇到过同样的问题。出现这种情况是因为composer无法安装composer中指定的依赖项。json文件。 尝试运行

composer install 

如果这不能解决问题,请确保 安装了以下PHP模块 php-mbstring php dom

要安装此扩展,请在终端中运行以下命令

sudo apt-get install php-mbstring php-dom

一旦安装完成

尝试在项目根文件夹中运行该命令

composer install 

您使用的是哪种操作系统? Windows操作系统: 进入命令提示符

设置www/{ur项目}的路径

我的:www/laravel5

然后键入以下命令:composer install

它会自动安装vendor/中的所有依赖项

当我更新而不是安装作曲家时,我得到了这个。

您是创建了一个新项目还是克隆了一个现有项目?

如果你克隆了一个现有的项目,运行它是非常重要的

composer install

这样,所有缺失的依赖项都将被安装。

但是如果你创建了一个新项目,你应该运行这个命令来使用composer创建一个新项目

composer create-project laravel/laravel name-of-your-project

通过cmd进入你的项目文件夹。运行以下命令

composer update

它将安装项目中缺少的供应商文件夹和文件。

但在某些情况下,它会在cmd中给出类似“您的配置不允许连接到.....”的错误。

这是作曲家的功劳。json文件,

将“secure-http”:true修改为“secure-http”:false

但在某些情况下(就像我的情况),你可能在你的文件中找不到这样的行。为此,请执行以下操作:

change "config": {
        "preferred-install": "dist"
}

to

"config": {
    "preferred-install": "dist",
    "secure-http": false
}

并再次运行composer update命令。

希望这能解决问题。