2013-01-06 148 views
1

我有包括Zend框架中的Symfony 2在生產中,因爲當我使用它在當地有沒有問題一個問題...包括Zend公司在Symfony的2

我只是COMMITED我的生產服務器上我的工作和我有這樣的錯誤:

致命錯誤:類「Zend_Gdata_AuthSub」未找到

而且有這種錯誤的Zend Framework ... 的任何類這是我的自動加載,這是很好的本地主機:

<?php 
use Doctrine\Common\Annotations\AnnotationRegistry; 

$loader = require __DIR__.'/../vendor/autoload.php'; 

// intl 
if (!function_exists('intl_get_error_code')) { 
    require_once __DIR__.'/../vendor/symfony/symfony/src/Symfony/Component/Locale/Resources/stubs/functions.php'; 

    $loader->add('', __DIR__.'/../vendor/symfony/symfony/src/Symfony/Component/Locale/Resources/stubs'); 
    $loader->add('Zend_', __DIR__.'/../vendor/zf/library'); 
} 

AnnotationRegistry::registerLoader(array($loader, 'loadClass')); 
set_include_path(__DIR__.'/../vendor/zf/library'.PATH_SEPARATOR.get_include_path()); 
return $loader; 
?> 

包含路徑可能存在問題,但我不知道爲什麼...

非常感謝!

+0

您是否將Zend與Composer一起安裝?我不認爲在Symfony中包含完整的Zend框架是一個好主意,您應該只包含您想要使用的ZF模塊。 –

+0

我在vendor/zf /中有一個composer.json文件,是嗎?我該如何選擇?我只需要在圖書館中刪除我不想要的東西? – blackarcanis

回答

2

如果你想使用作曲您從ZF2需要,那麼你可以在Zend Framework site Composer info page

使用這些信息作爲一個例子,你可以像這樣的代碼添加到您composer.json文件,以使存儲庫中的組件拉:

"repositories": [ 
    { 
     "type": "composer", 
     "url": "https://packages.zendframework.com/" 
    } 
], 


"require": { 
"zendframework/zend-config": "2.0.*", 
"zendframework/zend-http": "2.0.*" 
}, 

你把你想拉在「要求」一節和可用的軟件包列表下的包的名稱是我提供的,所以你可以檢查名稱存在的鏈接。 當你去安裝的依賴關係,你可以使用這個命令:

php composer.phar install 

這是否幫助? :-)

+0

只是再看一次,我可以看到你正在試圖使用ZF1與Symfony 2而不是ZF2 ....我的答案是基於ZF2,所以很容易混淆事項:-) – dkcwd