在Zend Framework应用程序中包含其他库

时间:2010-09-08 23:48:57

标签: git zend-framework

我有一个使用标准结构的ZF应用程序:

application/
    <etc>
library/
    Zend/
public/
tests/

我还有一个使用以下结构的独立库:

library/
    <classes>
tests/
   library/

两者都使用git进行源代码控制。我想在应用程序中包含库,但我很难找到一个好的,可维护的方法来执行此操作。库的'library'文件夹的内容是结构化的,以便适合自动加载,所以理想情况下我希望library /的内容存在于ZF应用程序的库目录中:

library/
    Zend/
    <classes>

我不能单独使用git子模块,因为我不能将repo的子文件夹包含为子模块,并且子模块本身必须存在于子文件夹中(所以我最终会使用库/东西/&LT;类&GT;)

我一直在玩these subtree extensions来git,这非常酷,解决了第一个问题(允许我将我的库项目的库文件夹拆分成它自己的repo)。但我仍然存在不直接将此repo的内容包含到我的库文件夹中的问题。

我正在尝试避免为此lib添加一个带有自动加载功能的全新文件夹。

有没有人知道一个很好的解决方案,或者是否有人使用稍微不同的项目结构来避免这种情况?

1 个答案:

答案 0 :(得分:0)

您是否尝试将单独的库与Zend放在/库中并添加:

autoloaderNamespaces[] = "YourLibName"

到application.ini?多数民众赞成我会做的。

如果尚未完成,也将其添加到bootstrap:

 protected function _initAppAutoload()
{
    $moduleLoad = new Zend_Application_Module_Autoloader(array(
       'namespace' => '',
       'basePath'   => APPLICATION_PATH
    ));
}