我面临一个问题我不知道这是什么原因我在我的项目src / ApiMaps / ApiMapBundle中添加了具有此名称空间的位置
<?php
namespace ApiMaps\ApiMapService;
class ApiMapService {
private $transport;
public function __construct() {
$this->transport = 'sendmail';
}
// ...
}
当我放弃
src/config/service.yml
app.test:
class: ApiMaps\ApiMapService\ApiMapService
arguments: ["@doctrine.orm.entity_manager"]
当我从其他类中运行它时,例如
src/ApiMaps/ApiMapBundle/Command/GetApiCommand.php
class GetApiCommand extends ContainerAwareCommand
{
protected function execute(InputInterface $input, OutputInterface $output)
{
$number = $this->getContainer()->get('app.test');
}
}
它给我错误
致命错误:Class&#39; ApiMaps \ ApiMapService \ ApiMapService&#39;在D:\ xampp \ htdocs \ ProjectMapApiData \ a中找不到 第325行的pp \ cache \ dev \ appDevDebugProjectContainer.php [2016-02-01 08:25:20] php.CRITICAL:致命错误:Class&#39; ApiMaps \ ApiMapService \ ApiMapService&#39;没找到{&#34; 类型&#34;:1,&#34;文件&#34;:&#34; d:\ XAMPP \ htdocs中\ ProjectMapApiData \应用\缓存\ dev的\ appDevDebugProjectContainer.php&#34;&#34; 线&#34;:325,&#34;电平&#34;: - 1,&#34;堆栈&#34;:[]}
[Symfony的\元器件\调试\异常\的ClassNotFoundException] 试图加载类&#34; ApiMapService&#34;来自命名空间&#34; ApiMaps \ ApiMapService&#34;。 你忘记了&#34;使用&#34;另一个命名空间的语句?
Note-- 有一点要提到的是,当我尝试从symfony2类的内置类中提供服务时,它不会给我这样的错误。我知道我需要在哪里添加我最近在我的项目中添加的类的命名空间,它能够知道该类......
答案 0 :(得分:0)
你在文件中提到你的服务:
src/ApiMaps/ApiMapBundle
但在配置中你写道:
ApiMaps\ApiMapService\ApiMapService
。
我认为您应该在文件中为您提供服务:src/ApiMaps/ApiMapBundle/ApiMapService/ApiMapService.php
,
取名称空间:ApiMaps\ApiMapBundle\ApiMapService
并写入配置:ApiMaps\ApiMapBundle\ApiMapService\ApiMapService
。
真的相信它会帮助你......