Laravel 5无法打开所需的bootstrap /../ vendor/autoload.php

Sco*_*ott 354 php laravel-5

我最近通过作曲家安装了Laravel 5.我尝试使用工匠创建一个新的控制器,我收到以下错误:

自举/../供应商/ autoload.php.无法打开流:没有这样的文件或目录."vendor"文件夹不存在.

我错过了什么吗?

Shu*_*moy 290

使用--no-scripts运行composer

composer update --no-scripts  
Run Code Online (Sandbox Code Playgroud)

这将解决问题.我在Mac和Linux上试过这个.

  • 有时当你运行:"composer install"时你也得到了这个错误,所以最好的选择是先运行:"composer install --no-scripts"然后正常运行composer install. (14认同)
  • Composer文档: - no-scripts:跳过composer.json中定义的脚本的执行.(https://getcomposer.org/doc/03-cli.md#update) (3认同)

小智 134

你正在使用哪种操作系统?对于Windows:转到Command Prompt

设置路径 www/{ur project}

为了我 : www/laravel5

然后输入以下命令: composer install

它将自动安装所有依赖项 vendor/


dan*_*son 91

运行composer install在你的项目根文件夹(或php composer.phar install).


Sco*_*ott 69

事实证明我没有在我的php.ini中启用openssl所以当我用composer创建我的新项目时,它是从源代码安装的.我改变了然后跑了

composer update
Run Code Online (Sandbox Code Playgroud)

现在已创建供应商文件夹.


Dim*_*sta 50

您是否创建了新项目或者是否克隆了现有项目?

如果您克隆了现有项目,那么运行非常重要

composer install
Run Code Online (Sandbox Code Playgroud)

这样就可以安装所有缺少的依赖项.

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

composer create-project laravel/laravel name-of-your-project
Run Code Online (Sandbox Code Playgroud)


Wil*_*iem 21

只需在安装项目的目录中运行它

composer install
Run Code Online (Sandbox Code Playgroud)


nav*_*ukh 20

我遇到了同样的问题.之所以发生这种情况,是因为composer无法安装composer.json文件中指定的依赖项.试试跑步

composer install 
Run Code Online (Sandbox Code Playgroud)

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

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

sudo apt-get install php-mbstring php-dom
Run Code Online (Sandbox Code Playgroud)

一旦安装完成

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

composer install 
Run Code Online (Sandbox Code Playgroud)

  • 我安装了php-xml来实现这个工作而不是php-dom(在16.04中不存在). (4认同)

Ham*_*ami 19

您需要重新生成autoload.php文件.您可以使用它dump-autoload来执行此操作,而无需进行安装或更新.

使用

composer dump-autoload
Run Code Online (Sandbox Code Playgroud)

autoload.php/vendor目录中再次生成文件.


RAS*_*ANA 17

下面这个步骤解决了我的问题.你可以试试

composer update --no-scripts 
composer update
Run Code Online (Sandbox Code Playgroud)

  • 也解决了我的问题!谢谢 (2认同)
  • 非常感谢你! (2认同)

Has*_*iri 15

在检查了php版本和大量研究之后,问题就出现了,Composer所以只需运行以下命令即可

composer install --ignore-platform-reqs


Jay*_*ini 7

这个解决方案对我有用。原因是您的应用程序中没有供应商文件夹

按着这些次序:

  1. 如果您的项目有composer.json文件,请将其删除

  2. 然后运行

    composer require phpspec/phpspec
    
    Run Code Online (Sandbox Code Playgroud)

该命令将供应商文件夹添加到您的项目中


Sur*_*ani 6

当新项目创建了laravel需要加载供应商以自动加载库时,我们使用composer update来

composer update
Run Code Online (Sandbox Code Playgroud)

Composer是一个依赖项管理器,允许您将管理依赖项的责任委派给第三方.


Rah*_*ham 5

只需运行以下命令,

composer update
Run Code Online (Sandbox Code Playgroud)

要么

composer install
Run Code Online (Sandbox Code Playgroud)


saa*_*adk 5

通过cmd转到项目文件夹。运行以下命令

composer update
Run Code Online (Sandbox Code Playgroud)

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

但在某些情况下,它会在cmd中显示“您的配置不允许连接到.....”这样的错误。

为此,转到您的composer.json文件,

更改"secure-http": true"secure-http": false

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

change "config": {
        "preferred-install": "dist"
}
Run Code Online (Sandbox Code Playgroud)

"config": {
    "preferred-install": "dist",
    "secure-http": false
}
Run Code Online (Sandbox Code Playgroud)

并再次运行composer update命令。

希望这能解决问题。


Rah*_*san 5

只需使用composer而不是laravel这样设置一个新项目:

composer create-project --prefer-dist laravel/laravel myProje
Run Code Online (Sandbox Code Playgroud)


Has*_*aza 5

然后删除供应商composer install