我最近通过作曲家安装了Laravel 5。我尝试使用 Artisan 创建一个新控制器,但出现以下错误。我错过了什么吗?
启动/。。/vendor/autoload.php.无法打开流:没有此类文件或目录。"供应商"文件夹不存在。
no-script 运行作曲家
composer update --no-scripts
这将解决问题。我在Mac和Linux上尝试过这个。
您使用的是哪种操作系统?对于视窗 :转到Command Prompt
将路径设置为www/{ur project}
对我来说:www/laravel5
然后键入以下命令: composer install
它将自动安装vendor/
中的所有依赖项
在根项目文件夹(或php composer.phar install
(中运行composer install
。
事实证明我没有在我的 php 中启用 openssl.ini所以当我使用 composer 创建新项目时,它是从源代码安装的。我改变了它并运行了
composer update
现在,供应商文件夹已创建。
您是创建新项目还是克隆现有项目?
如果您克隆了现有项目,则运行
非常重要composer install
这样,将安装所有缺少的依赖项。
但是,如果您创建一个新项目,则应运行此命令以使用composer创建新项目
composer create-project laravel/laravel name-of-your-project
我遇到了同样的问题。发生这种情况是因为作曲家无法安装 composer.json 文件中指定的依赖项。尝试跑步
composer install
如果这不能解决问题,请确保安装了以下 PHP 模块php-mbstringphp-dom
要安装此扩展程序,请在终端中运行以下命令
sudo apt-get install php-mbstring php-dom
安装完成后
尝试在项目根文件夹中运行该命令
composer install
您需要重新生成autoload.php
文件。 您可以使用dump-autoload
来执行此操作,而无需进行安装或更新。
用
composer dump-autoload
以在目录中再次生成autoload.php
/vendor
文件。
按照以下步骤解决了我的问题。你可以试试
composer update --no-scripts
composer update
只需在安装项目的目录中运行它
composer install
在检查php
版本并进行大量研究后,问题出在Composer
方面,因此只需运行以下命令
composer install --ignore-platform-reqs
这个解决方案对我有用。原因是应用程序中没有供应商文件夹。
请按照以下步骤操作:
-
如果您的项目包含
composer.json
文件,请将其删除 -
然后运行
composer require phpspec/phpspec
该命令将供应商文件夹添加到您的项目
通过cmd转到项目文件夹。 运行以下命令
composer update
它将在您的项目中安装缺少的供应商文件夹和文件。
但在某些情况下,它会给出错误,例如"您的配置不允许连接到....."在CMD中。
为此,请转到您的 composer.json 文件,
将"secure-http": true
更改为"secure-http": false
但在某些情况下(就像我的情况一样(,您可能在文件中找不到这样的行。 为此,请执行以下操作:
change "config": {
"preferred-install": "dist"
}
自
"config": {
"preferred-install": "dist",
"secure-http": false
}
并再次运行composer update
命令。
希望这能解决问题。
只需运行以下命令,
composer update
或
composer install
当新项目创建时,laravel需要加载供应商以自动加载库,我们使用作曲家更新来
composer update
Composer 是一个依赖项管理器,允许您将管理依赖项的责任委派给第三方。
只需使用 composer
而不是像这样设置laravel
一个新项目:
composer create-project --prefer-dist laravel/laravel myProje
删除供应商 然后composer install
<</p>
我也有这个错误。但以上都不能解决问题。所以我卸载并再次安装了作曲家。然后我做了composer update
.问题已解决。
您缺少供应商文件夹,可能是其新的克隆存储库或新项目
供应商文件夹由 composer 二进制文件填充,该二进制文件读取 composer.json 文件或系统要求,并打包安装在供应商文件夹下,并创建一个已分类的自动加载脚本
composer update
在执行以下说明之前,您需要确保在计算机上全局安装了作曲家;打开Mac终端并运行以下命令:
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
全局安装 Composer 后,在项目目录中运行以下命令:
composer install
完成后,更新并安装所有必需的软件包。
我对拉拉维尔和工匠有同样的问题,解决方案:
php artisan key:generate
我们收到一个错误,因为我们的项目中缺少供应商文件夹,供应商目录包含我们的作曲家依赖项。
需要/vendor
文件夹,因为所有包都在那里,包括Laravel使用的所有类,只需执行两个步骤即可解决问题:
composer update --no-scripts
composer update
- --
- no-scripts:跳过执行
composer.json
中定义的脚本 - 作曲家更新:这将检查项目中所需的库的较新版本。如果找到较新的版本,并且它与
composer.json
文件中定义的版本约束兼容,它将替换以前安装的版本。将更新composer.lock
文件以反映这些更改。
这两个命令,我们将在我们的项目中重新创建供应商文件夹,之后我们的项目将顺利运行。
我将composer.lock
文件添加到 .gitignore 中,在将该文件提交到存储库后错误消失了:)
我的问题通过以下方式解决
composer update
composer install
php artisan key:generate
如果您有任何其他问题,可以清除缓存和配置清除路由缓存:
php artisan route:cache
清除视图缓存:
php artisan view:clear
清除配置缓存:
php artisan config:cache
我意识到你的 composer.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"
]
},
删除post install cmd
有助于运行作曲家安装,没有任何问题。
希望这有帮助
干杯!!
当我做composer update
而不是composer install
时,我得到了这个.
删除供应商文件夹并运行编辑器安装命令。它正在工作 100%<</p>
就我而言,我必须启用另一个扩展名,即php_mbstring.dll
在php.ini
文件中才能工作。它列在 extension=php_mbstring.dll
下。在php.ini
文件中找到它并删除它前面的分号 ( ;
( 并保存文件。
在此运行之后,再次install composer
Laravel应用程序的根目录中,并且应该可以工作。
如果您是Windows用户,则可以卸载Composer。然后安装作曲家。之后,您安装拉拉维尔。也许它会起作用。
我有用:安装项目后,我打开项目的文件夹并运行这两个命令
composer update
composer require doctrine/dbal
我是否相关 -
我已经下载了 laravel的 Github 版本并安装了 lando,但无法启动它。
在兰多食谱中,我不得不添加php: 8.1
.lando.yml
name: ltest1
recipe: laravel
config:
webroot: public
php: 8.1
和
$ lando ssh
$ composer install
$ php artisan key:generate