【发布时间】:2010-12-06 19:49:16
【问题描述】:
在我的 Ubuntu 机器上安装 PHPUnit 之前,我认为我已经正确设置了 zf.sh。我能够毫无问题地创建一个新项目。现在,自从安装了 PHPUnit,一切都不正常了。
当我尝试创建一个测试项目时,我得到了这个:
Fatal error: Cannot redeclare class PHPUnit_Framework_TestSuite_DataProvider in /usr/share/php/PHPUnit/Framework/TestSuite/DataProvider.php on line 64
Call Stack:
0.0011 110200 1. {main}() /opt/ZendFramework/ZendFramework-1.9.3PL1-minimal/bin/zf.php:0
0.0011 110320 2. zf_main() /opt/ZendFramework/ZendFramework-1.9.3PL1-minimal/bin/zf.php:23
0.0113 685448 3. zf_run() /opt/ZendFramework/ZendFramework-1.9.3PL1-minimal/bin/zf.php:36
0.0113 685568 4. Zend_Tool_Framework_Client_Console::main() /opt/ZendFramework/ZendFramework-1.9.3PL1-minimal/bin/zf.php:214
0.0114 686044 5. Zend_Tool_Framework_Client_Abstract->dispatch() /opt/ZendFramework/ZendFramework-1.9.3PL1-minimal/library/Zend/Tool/Framework/Client/Console.php:96
0.0114 686164 6. Zend_Tool_Framework_Client_Abstract->initialize() /opt/ZendFramework/ZendFramework-1.9.3PL1-minimal/library/Zend/Tool/Framework/Client/Abstract.php:209
0.0152 866128 7. Zend_Tool_Framework_Loader_Abstract->load() /opt/ZendFramework/ZendFramework-1.9.3PL1-minimal/library/Zend/Tool/Framework/Client/Abstract.php:118
0.4374 2729116 8. include_once('/usr/share/php/PHPUnit/Framework/TestSuite/DataProvider.php') /opt/ZendFramework/ZendFramework-1.9.3PL1-minimal/library/Zend/Tool/Framework/Loader/Abstract.php:90
我需要做什么才能让它再次工作?
更新:我想我理解发生这种情况的原因。在 PHPUnit 3.4.0 中有一个与 Zend Framework 1.9.3 同名的类。 Apparently it is a known issue。但是我怎样才能解决这个问题,以便我可以再次使用 Zend_Tool 呢?我可以降级 PHPUnit 吗?这能解决问题吗?
更新:This tutorial 提到了一些关于安装差异补丁的内容。
【问题讨论】:
-
blog post中描述的另一个解决方案
标签: zend-framework phpunit zend-tool