php - 如何修复 laravel 作曲家更新问题( Illuminate\Foundation\ComposerScripts::postAutoloadDump 无法打开流:没有这样的文件或目录)
问题描述
我目前正在使用一个名为 Bagisto 的现有电子商务功能包来开发一个 laravel 项目。我已经从GitHub 上的存储库下载了包文件,并在我的 Ubuntu 18.04 操作系统上的 xampp htdocs 文件夹中添加了这些文件。问题发生在我composer update
在项目目录中的终端中启动后,我收到以下错误消息:
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
PHP Warning: Uncaught ErrorException: require(/opt/lampp/htdocs/bagisto/vendor/composer/../guzzlehttp/guzzle/src/functions_include.php): failed to open stream: No such file or directory in /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php:66
Stack trace:
#0 /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php(66): Composer\Util\ErrorHandler::handle(2, 'require(/opt/la...', '/opt/lampp/htdo...', 66, Array)
#1 /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php(66): require()
#2 /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php(56): composerRequire75e2944913aa928a280073a462abdd28('37a3dc5111fe8f7...', '/opt/lampp/htdo...')
#3 /opt/lampp/htdocs/bagisto/vendor/autoload.php(7): ComposerAutoloaderInit75e2944913aa928a280073a462abdd28::getLoader()
#4 /opt/lampp/htdocs/bagisto/vendor/laravel/framework/src/Illuminate/Foundation/ComposerScripts.php(43): require_once('/opt/lampp/htdo...')
#5 phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php(297): Illuminate\Foundation\C in /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php on line 66
Warning: Uncaught ErrorException: require(/opt/lampp/htdocs/bagisto/vendor/composer/../guzzlehttp/guzzle/src/functions_include.php): failed to open stream: No such file or directory in /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php:66
Stack trace:
#0 /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php(66): Composer\Util\ErrorHandler::handle(2, 'require(/opt/la...', '/opt/lampp/htdo...', 66, Array)
#1 /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php(66): require()
#2 /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php(56): composerRequire75e2944913aa928a280073a462abdd28('37a3dc5111fe8f7...', '/opt/lampp/htdo...')
#3 /opt/lampp/htdocs/bagisto/vendor/autoload.php(7): ComposerAutoloaderInit75e2944913aa928a280073a462abdd28::getLoader()
#4 /opt/lampp/htdocs/bagisto/vendor/laravel/framework/src/Illuminate/Foundation/ComposerScripts.php(43): require_once('/opt/lampp/htdo...')
#5 phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php(297): Illuminate\Foundation\C in /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php on line 66
PHP Fatal error: composerRequire75e2944913aa928a280073a462abdd28(): Failed opening required '/opt/lampp/htdocs/bagisto/vendor/composer/../guzzlehttp/guzzle/src/functions_include.php' (include_path='.:/usr/share/php') in /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php on line 66
Fatal error: composerRequire75e2944913aa928a280073a462abdd28(): Failed opening required '/opt/lampp/htdocs/bagisto/vendor/composer/../guzzlehttp/guzzle/src/functions_include.php' (include_path='.:/usr/share/php') in /opt/lampp/htdocs/bagisto/vendor/composer/autoload_real.php on line 66
而composer.json文件内容为:
{
"name": "bagisto/bagisto",
"description": "Bagisto Laravel ECommerce",
"keywords": [
"framework",
"laravel"
],
"license": "MIT",
"type": "project",
"require": {
"php": "^7.1.3",
"barryvdh/laravel-dompdf": "^0.8.0@dev",
"dimsav/laravel-translatable": "^9.0",
"doctrine/dbal": "^2.9@dev",
"fideloper/proxy": "^4.0",
"flynsarmy/db-blade-compiler": "*",
"intervention/image": "^2.4",
"intervention/imagecache": "^2.3",
"kalnoy/nestedset": "^4.3",
"konekt/concord": "^1.2",
"laravel/framework": "5.7.*",
"laravel/tinker": "^1.0",
"maatwebsite/excel": "3.1.x-dev",
"nwidart/laravel-modules": "^3.2",
"prettus/l5-repository": "^2.6",
"propaganistas/laravel-intl": "^2.0"
},
"require-dev": {
"barryvdh/laravel-debugbar": "^3.1",
"filp/whoops": "^2.0",
"fzaninotto/faker": "^1.4",
"mockery/mockery": "^1.0",
"nunomaduro/collision": "^2.0",
"phpro/grumphp": "dev-master",
"phpunit/phpunit": "^7.0"
},
"replace": {
"bagisto/laravel-user": "v0.1.0",
"bagisto/laravel-admin": "v0.1.0",
"bagisto/laravel-ui": "v0.1.0",
"bagisto/laravel-core": "v0.1.0",
"bagisto/laravel-attribute": "v0.1.0",
"bagisto/laravel-checkout": "v0.1.0",
"bagisto/laravel-customer": "v0.1.0",
"bagisto/laravel-inventory": "v0.1.0",
"bagisto/laravel-category": "v0.1.0",
"bagisto/laravel-product": "v0.1.0",
"bagisto/laravel-shop": "v0.1.0",
"bagisto/laravel-theme": "v0.1.0",
"bagisto/laravel-shipping": "v0.1.0",
"bagisto/laravel-payment": "v0.1.0",
"bagisto/laravel-sales": "v0.1.0",
"bagisto/laravel-tax": "v0.1.0"
},
"autoload": {
"classmap": [
"database/seeds",
"database/factories"
],
"psr-4": {
"App\\": "app/",
"Webkul\\User\\": "packages/Webkul/User/src",
"Webkul\\Admin\\": "packages/Webkul/Admin/src",
"Webkul\\Ui\\": "packages/Webkul/Ui/src",
"Webkul\\Category\\": "packages/Webkul/Category/src",
"Webkul\\Checkout\\": "packages/Webkul/Checkout/src",
"Webkul\\Attribute\\": "packages/Webkul/Attribute/src",
"Webkul\\Shop\\": "packages/Webkul/Shop/src",
"Webkul\\Core\\": "packages/Webkul/Core/src",
"Webkul\\Customer\\": "packages/Webkul/Customer/src",
"Webkul\\Inventory\\": "packages/Webkul/Inventory/src",
"Webkul\\Product\\": "packages/Webkul/Product/src",
"Webkul\\Theme\\": "packages/Webkul/Theme/src",
"Webkul\\Shipping\\": "packages/Webkul/Shipping/src",
"Webkul\\Payment\\": "packages/Webkul/Payment/src",
"Webkul\\Paypal\\": "packages/Webkul/Paypal/src",
"Webkul\\Sales\\": "packages/Webkul/Sales/src",
"Webkul\\Tax\\": "packages/Webkul/Tax/src",
"Webkul\\API\\": "packages/Webkul/API"
}
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
}
},
"extra": {
"laravel": {
"dont-discover": []
}
},
"repositories": [
{
"type": "composer",
"url": "https://packagist.org"
},
{
"packagist": false
}
],
"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",
"App\\Test::test",
"@php artisan package:discover"
]
},
"config": {
"preferred-install": "stable",
"sort-packages": true,
"optimize-autoloader": true
},
"minimum-stability": "dev"
}
我已经尝试了一些方法来解决这个问题,比如更新作曲家和 laravel 框架版本,但仍然没有得到任何解决方案。
解决方案
如果 Ankit Singh 的答案不起作用。
- 您已经运行
composer install
并且在终端窗口中出现一般错误,例如:Illuminate\Foundation\ComposerScripts::postAutoloadDump failed to ...........
. - 如果您的 php 文件代码中有错误的语法(例如错误的
use Class;
语句),那么上面的错误不会显示太多细节。 - 尝试运行
php artisan migrate
,然后将显示问题所在的完整路径和有问题的文件的行号。(例如Warning: The use statement with non-compound name 'Log' has no effect in \path\to\your\file.php on line 5
:) - 因此,有了这个详细的错误,我们可以转到特定文件并解决问题(在这种情况下,
use Class
从 php 类中删除)
希望有人能找到帮助!
推荐阅读
- python - 我应该如何在我的 tkinter 应用程序中添加分隔符,或者我应该如何使用 pack() 函数使项目形成垂直列
- excel - VBA 或 Excel 公式循环使用多个条件的多个值
- hugo - 在静态站点上添加临时消息
- mysql - 如何使用 localhost 通过网桥连接到 mysql docker 实例?
- python - 仅从 Python 中的 TXT 文件中提取文章的标题
- python - Python Selenium ElementClickInterceptedException
- ruby-on-rails - Ruby Rails:我应该使用布尔真还是:真?
- python - 哪种数据类型最适合 Keras 中的 CNN?
- python - 将单元格值移动到另一列中的较低单元格
- javascript - 我怎样才能把这个边框和我的幻灯片结合起来?