我的 CakePHP 3 应用程序在我的本地服务器上运行良好。但是当我在 Heroku 上安装它时,我不断收到以下错误:
错误:应用程序正在尝试从 DebugKit 插件加载文件。
确保您的插件 DebugKit 位于/app/plugins/目录中并且已加载。
我很困惑,因为我已经安装了 composer install,并且我在 vendor/cakephp/debug_kit 中看到了 debug_kit,但错误似乎是在其他插件目录中查找.
为什么会这样?
更新:我运行了 composer install --verbose 并且看到了以下错误:
$ composer install --verbose
使用包信息加载 Composer 存储库
从锁定文件安装依赖项(包括 require-dev)
分析了 91 个包以解决依赖关系
分析了 165 条规则来解决依赖关系
无需安装或更新
生成自动加载文件
post-autoload-dump: Cake\Composer\Installer\PluginInstaller::postAutoloadDump post-install-cmd: App\Console\Installer::postInstall
Script App\Console\Installer::postInstall handling the post-install-cmd event terminated with an exception
[InvalidArgumentException]
Maximum number of attempts must be a positive value.
Exception trace:
() at phar:///app/.heroku/php/bin/composer/vendor/symfony/console/Symfony/Component/Console/Question/Question.php:191
Symfony\Component\Console\Question\Question->setMaxAttempts() at phar:///app/.heroku/php/bin/composer/src/Composer/IO/ConsoleIO.php:246
Composer\IO\ConsoleIO->askAndValidate() at /app/src/Console/Installer.php:55
App\Console\Installer::postInstall() at phar:///app/.heroku/php/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:211
Composer\EventDispatcher\EventDispatcher->executeEventPhpScript() at phar:///app/.heroku/php/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:167
Composer\EventDispatcher\EventDispatcher->doDispatch() at phar:///app/.heroku/php/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:92
Composer\EventDispatcher\EventDispatcher->dispatchScript() at phar:///app/.heroku/php/bin/composer/src/Composer/Installer.php:342
Composer\Installer->run() at phar:///app/.heroku/php/bin/composer/src/Composer/Command/InstallCommand.php:131
Composer\Command\InstallCommand->execute() at phar:///app/.heroku/php/bin/composer/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:257
Symfony\Component\Console\Command\Command->run() at phar:///app/.heroku/php/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:874
Symfony\Component\Console\Application->doRunCommand() at phar:///app/.heroku/php/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:195
Symfony\Component\Console\Application->doRun() at phar:///app/.heroku/php/bin/composer/src/Composer/Console/Application.php:146
Composer\Console\Application->doRun() at phar:///app/.heroku/php/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:126
Symfony\Component\Console\Application->run() at phar:///app/.heroku/php/bin/composer/src/Composer/Console/Application.php:82
Composer\Console\Application->run() at phar:///app/.heroku/php/bin/composer/bin/composer:43
require() at /app/.heroku/php/bin/composer:25
install [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--no-plugins] [--no-custom-installers] [--no-autoloader] [--no-scripts] [--no-progress] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [--ignore-platform-reqs] [packages1] ... [packagesN]
错误似乎来自 Symfony
最佳答案
我遇到过一次,相信我通过用更新版本替换 App\Console\Installer 来修复它。
这个修复它的提交可以追溯到这个问题:https://github.com/cakephp/app/issues/241
(您可以借此机会升级应用中来自模板的其他文件。)
关于php - CakePHP 3 错误 : The application is trying to load a file from the DebugKit plugin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31417334/