我在安装tinywan/exception-handler异常处理插件的时候报错了,其实不止是这个扩展有问题,安装其他某一些扩展时也会有一样的报错,但不是全部。
/mnt/projects/app-backend/vendor/tinywan/exception-handler/src/Install.php 这个文件是真实存在的,所以也许是下载前加载的文件?
composer require tinywan/exception-handler
Reading ./composer.lock (/mnt/projects/app-backend/composer.lock)
Reading /mnt/projects/app-backend/vendor/composer/installed.json
Running composer update tinywan/exception-handler
Loading composer repositories with package information
Reading /root/.composer/cache/repo/https---repo.packagist.org/packages.json from cache
Downloading https://repo.packagist.org/packages.json if modified
[304] https://repo.packagist.org/packages.json
Reading /root/.composer/cache/repo/https---repo.packagist.org/provider-tinywan~exception-handler.json from cache
Downloading https://repo.packagist.org/p2/tinywan/exception-handler.json if modified
[304] https://repo.packagist.org/p2/tinywan/exception-handler.json
Built pool.
Running pool optimizer.
Pool optimizer completed in 0.002 seconds
Found 134 package versions referenced in your dependency graph. 16 (12%) were optimized away.
Updating dependencies
Generating rules
Resolving dependencies through SAT
Looking at all rules.
Dependency resolution completed in 0.001 seconds
Analyzed 118 packages to resolve dependencies
Analyzed 241 rules to resolve dependencies
Lock file operations: 1 install, 0 updates, 0 removals
Installs: tinywan/exception-handler:v1.1.5
- Locking tinywan/exception-handler (v1.1.5)
Writing lock file
Installing dependencies from lock file (including require-dev)
Reading ./composer.lock (/mnt/projects/app-backend/composer.lock)
Package operations: 1 install, 0 updates, 0 removals
Installs: tinywan/exception-handler:v1.1.5
Reading /root/.composer/cache/files/tinywan/exception-handler/b68ddc73bec607cab539ab0757015190719c1310.zip from cache
- Loading tinywan/exception-handler (v1.1.5) from cache
- Installing tinywan/exception-handler (v1.1.5): Extracting archive
Executing async command (CWD): '/usr/bin/unzip' -qq '/mnt/projects/app-backend/vendor/composer/tmp-20a14abe1814e68d152f1711ef76b109' -d '/mnt/projects/app-backend/vendor/composer/a889d5e7'
Executing async command (CWD): rm -rf '/mnt/projects/app-backend/vendor/composer/a889d5e7'
> post-package-install: support\Plugin::install
Script support\Plugin::install handling the post-package-install event terminated with an exception
Downloading https://packagist.org/downloads/
[201] https://packagist.org/downloads/
In ClassLoader.php line 582:
[ErrorException]
include(/mnt/projects/app-backend/vendor/tinywan/exception-handler/src/Install.php): failed to open stream: No such file or directory
Exception trace:
at phar:///usr/local/bin/composer/vendor/composer/ClassLoader.php:582
Composer\Util\ErrorHandler::handle() at phar:///usr/local/bin/composer/vendor/composer/ClassLoader.php:582
include() at phar:///usr/local/bin/composer/vendor/composer/ClassLoader.php:582
Composer\Autoload\{closure}() at phar:///usr/local/bin/composer/vendor/composer/ClassLoader.php:433
Composer\Autoload\ClassLoader->loadClass() at n/a:n/a
spl_autoload_call() at n/a:n/a
defined() at /mnt/projects/app-backend/vendor/workerman/webman-framework/src/support/Plugin.php:23
support\Plugin::install() at phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:439
Composer\EventDispatcher\EventDispatcher->executeEventPhpScript() at phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:257
Composer\EventDispatcher\EventDispatcher->doDispatch() at phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:148
Composer\EventDispatcher\EventDispatcher->dispatchPackageEvent() at phar:///usr/local/bin/composer/src/Composer/Installer/InstallationManager.php:396
Composer\Installer\InstallationManager::Composer\Installer\{closure}() at phar:///usr/local/bin/composer/src/Composer/Installer/InstallationManager.php:411
Composer\Installer\InstallationManager->executeBatch() at phar:///usr/local/bin/composer/src/Composer/Installer/InstallationManager.php:319
Composer\Installer\InstallationManager->downloadAndExecuteBatch() at phar:///usr/local/bin/composer/src/Composer/Installer/InstallationManager.php:218
Composer\Installer\InstallationManager->execute() at phar:///usr/local/bin/composer/src/Composer/Installer.php:797
Composer\Installer->doInstall() at phar:///usr/local/bin/composer/src/Composer/Installer.php:622
Composer\Installer->doUpdate() at phar:///usr/local/bin/composer/src/Composer/Installer.php:287
Composer\Installer->run() at phar:///usr/local/bin/composer/src/Composer/Command/RequireCommand.php:490
Composer\Command\RequireCommand->doUpdate() at phar:///usr/local/bin/composer/src/Composer/Command/RequireCommand.php:339
Composer\Command\RequireCommand->execute() at phar:///usr/local/bin/composer/vendor/symfony/console/Command/Command.php:298
Symfony\Component\Console\Command\Command->run() at phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:1040
Symfony\Component\Console\Application->doRunCommand() at phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:301
Symfony\Component\Console\Application->doRun() at phar:///usr/local/bin/composer/src/Composer/Console/Application.php:378
Composer\Console\Application->doRun() at phar:///usr/local/bin/composer/vendor/symfony/console/Application.php:171
Symfony\Component\Console\Application->run() at phar:///usr/local/bin/composer/src/Composer/Console/Application.php:141
Composer\Console\Application->run() at phar:///usr/local/bin/composer/bin/composer:88
require() at /usr/local/bin/composer:29
require [--dev] [--dry-run] [--prefer-source] [--prefer-dist] [--prefer-install PREFER-INSTALL] [--fixed] [--no-suggest] [--no-progress] [--no-update] [--no-install] [--no-audit] [--audit-format AUDIT-FORMAT] [--update-no-dev] [-w|--update-with-dependencies] [-W|--update-with-all-dependencies] [--with-dependencies] [--with-all-dependencies] [--ignore-platform-req IGNORE-PLATFORM-REQ] [--ignore-platform-reqs] [--prefer-stable] [--prefer-lowest] [--sort-packages] [-o|--optimize-autoloader] [-a|--classmap-authoritative] [--apcu-autoloader] [--apcu-autoloader-prefix APCU-AUTOLOADER-PREFIX] [--] [<packages>...]
composer.json
"require": {
"php": ">=7.2",
"workerman/webman-framework": "^1.5.0",
"monolog/monolog": "^2.0",
"topthink/think-validate": "^2.0",
"vlucas/phpdotenv": "^5.5",
"webman/console": "^1.2",
"webman-tech/laravel-cache": "^1.2",
"illuminate/filesystem": "^8.83",
"illuminate/database": "^8.83",
"illuminate/pagination": "^8.83",
"illuminate/events": "^8.83",
"midi/work-wechat": "^1.1",
"workerman/validation": "^3.0",
"tinywan/exception-handler": "*"
},
php:7.4.27
composer:2.5.7
webman:1.5.0
再次运行
完全没有问题,可以正常完成,但是使用时插件的config函数无法正常获取到插件的配置文件,因此插件无法使用
问题已解决,运行
重新生成classmap后解决
问题还是存在,只是不是必现的,多require几次有时候会成功,不知道什么原因