2013-01-06 128 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