在本地开发第三方包(或库)



我想为Symfony开发一个公共的第三方捆绑包。为了在开发过程中测试这个包,我需要一个功能性的Symfony安装。因此,我需要在Symfony测试应用程序中模拟我的包的Composer安装。

问题是,实现这一目标的最佳方式是什么?如果composer能让我们定义一个本地存储库,而不需要在包端提交,那么每次你想测试bundle时,都要在Symfony应用端composer update,那就太好了。我在这里解释的解决方案在这里解释:http://tech.vg.no/2014/11/25/using-local-packages-as-composer-dependencies/

这是我目前找到的最好的解决方案,我没有看到很多关于这方面的文献。所以这是对"Symfony第三方捆绑包开发者"的呼吁:在开发过程中,你如何开发和测试你的捆绑包?

为了澄清我对app/autolload .php的评论,Symfony 2给了你一个小钩子来允许自定义自动加载过程:

// app/autoload.php
$loader = require __DIR__.'/../vendor/autoload.php';
$loader->add('Cerad',   __DIR__  . '/../../cerad2/src');
AnnotationRegistry::registerLoader(array($loader, 'loadClass'));
return $loader;

因此,在上面的情况下,将使用位于文件系统其他位置的cerad2库。

这是否比简单地调整测试应用的编写器文件更好?可能不会,尽管它确实会派上用场。使用最适合您的方法。

相关内容

  • 没有找到相关文章