2016-02-01 54 views
1

我面臨的一個問題,我不知道是什麼的一個原因,我的位置在我的項目的src/ApiMaps/ApiMapBundle添加類使用該名稱空間服務類namespaceing在Symfony2的項目

<?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'); 
    } 
    } 

它給我的錯誤

致命錯誤:類 'ApiMaps \ ApiMapService \ ApiMapService' 在d未找到:\ XAMPP \ htdocs中\ ProjectMapApiData \一 PP \緩存\ dev的\ appDevDebugProjectContainer.php上線325 [2016- 02-01 08:25:20] php.CRITICAL:致命錯誤:未找到類'ApiMaps \ ApiMapService \ ApiMapService'{「 type」:1,「file」:「D:\ xampp \ htdocs \ ProjectMapApiData \ app \緩存\ dev的\ appDevDebugProjectContainer.php 「」 行 「:325,」 電平 「: - 1,」 堆疊「:[]}

[Symfony的\元器件\調試\異常\ ClassNotFoundException的] 試圖加載類名稱空間「ApiMaps \ ApiMapService」中的「ApiMapService」。 你忘記了另一個命名空間的「使用」語句嗎?

注意 - 有一點要提到的是,當我嘗試從symfony2類的內置類中提供服務時,它不會給我這樣的錯誤。我知道,我需要補充,我最近與我的項目添加類,它能夠知道類的命名空間...

回答

0

你提到你在文件服務: src/ApiMaps/ApiMapBundle
但在配置你寫道: ApiMaps\ApiMapService\ApiMapService

我想你應該給你提供住處的文件服務:src/ApiMaps/ApiMapBundle/ApiMapService/ApiMapService.php
採取命名空間:ApiMaps\ApiMapBundle\ApiMapService
,寫在配置:ApiMaps\ApiMapBundle\ApiMapService\ApiMapService

真正相信它會幫助你...

+0

現在我加入這個命名空間與我的類,在src裏/ ApiMaps/ApiMapBundle/ApiMapService.php命名空間ApiMaps \ ApiMapBundle \ ApiMapService;並在config/sercvice.yml中,當我與app.test調用它: 類:ApiMaps \ ApiMapBundle \ ApiMapService 參數:[「@ doctrine.orm.entity_manager」]現在它給我錯誤 – zahid

+0

[RuntimeException] 預期的自動加載機在文件「D:\ xampp \ h tdocs \ ProjectMapApiData/src \ ApiMaps \ ApiMapBundle \ ApiMapService.php」中定義了類「ApiMaps \ ApiMapBundle \ ApiMapService」。該文件被發現但類別 s不在其中,類名或命名空間可能有拼寫錯誤。 – zahid

+0

okey讓e試試這樣... – zahid