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

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

我遗漏了什么吗?


当前回答

使用composer而不是laravel设置一个新项目,就像这样:

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

其他回答

原来我没有在我的php.ini中启用openssl,所以当我用composer创建我的新项目时,它是从源代码安装的。我改了主意,跑了

composer update

现在已经创建了供应商文件夹。

我不知道我是否相关

我下载了laravel的Github版本,并安装了lando,但无法启动。

在lando recipe中,我必须在.lando.yml中添加php: 8.1

name: ltest1
recipe: laravel
config:
  webroot: public
  php: 8.1

and

$ lando ssh
$ composer install
$ php artisan key:generate

我意识到是你的作曲家。Json文件中会有一些脚本

"scripts": {
    "post-root-package-install": [
        "php -r \"copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "php artisan key:generate"
    ],
    "post-install-cmd": [
        "php artisan clear-compiled",
        "php artisan optimize"
    ],
    "pre-update-cmd": [
        "php artisan clear-compiled"
    ],
    "post-update-cmd": [
        "php artisan optimize"
    ],
    "post-autoload-dump": [
        "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
        "@php artisan package:discover"
    ]
},

对我有用的方法:

"scripts": {
    "post-root-package-install": [
        "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "@php artisan key:generate"
    ],
    "post-autoload-dump": [
        "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
        "@php artisan package:discover"
    ]
},

删除安装后CMD帮助运行编写器安装没有任何问题。

希望这能有所帮助

干杯! !

运行composer -no-scripts

composer update --no-scripts  

这将解决问题。我在Mac和Linux上尝试了这个功能。

只需在安装项目的目录中运行此命令

composer install