Php Silex命令失败
当我尝试使用Silex运行控制台命令时,出现了这个错误Php Silex命令失败,php,symfony,composer-php,silex,Php,Symfony,Composer Php,Silex,当我尝试使用Silex运行控制台命令时,出现了这个错误 PHP Error: Class 'Testing\Command\TestingCommand' not found in /var/www/testCmd/app/console on line 9 PHP Stack trace: PHP 1. {main}() /var/www/testCmd/app/console:0 PHP Fatal error: Uncaught Symfony\Component\Debug\Ex
PHP Error: Class 'Testing\Command\TestingCommand' not found in /var/www/testCmd/app/console on line 9
PHP Stack trace:
PHP 1. {main}() /var/www/testCmd/app/console:0
PHP Fatal error: Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "TestingCommand" from namespace "Testing\Command".
Did you forget a "use" statement for another namespace? in /var/www/testCmd/app/console:9
Stack trace:
#0 {main}
thrown in /var/www/testCmd/app/console on line 9
我有app/console.php和app/bootstrap.php文件。控制台正在加载引导程序,在控制台文件中,我有如下内容:
#!/usr/bin/env php
<?php
set_time_limit(0);
$app = require_once __DIR__ . '/bootstrap.php';
$application = $app['console'];
$app['console']->add(new \Testing\Command\TestingCommand());
$application->run();
该命令位于src/command/TestingCommand.php中
我是Silex的新手,我不知道是什么导致了这个问题。谢谢自动加载程序无法加载命令类。根据composer.json的autoload部分,这个类的类名文件应该位于src/Testing/Command/TestingCommand.php中。因此,您可以将此文件移动到此位置,或在composer.json中设置另一个搜索目录: 更改composer.json后,运行composer dump autoload
此命令类位于何处?添加有问题的composer.json的内容。我用composer文件信息更新了问题。谢谢我运行转储自动加载,我有一个->非空PSR-4前缀必须以名称空间分隔符结尾。顺便说一句:我想在psr-4内的第一行之后有一个。
{
"name": "testing/Command",
"require": {
"knplabs/console-service-provider": "^2.0",
"silex/silex": "^2.0",
"symfony/monolog-bridge": "^3.1",
"doctrine/common": "^2.6",
"doctrine/dbal": "^2.5"
},
"autoload": {
"psr-4": {
"\\": "src/"
}
}
}
"autoload": {
"psr-4": {
"Testing\\Command\\": "src/Command/"
"\\": "src/"
}
}