如何要求同一个包的两个版本?

时间:2013-11-02 18:52:10

标签: composer-php

在我的项目中,我需要为后端使用两个版本的twitter bootstrap(v2.x和v3.x)2,为前端使用3个版本。 是否有可能要求两者并告诉作曲家将它们安装在不同的领域?

类似的东西:

   {
       "name": "acme/hello-world",
       "require": {
           "twitter/bootstrap": "2.3.*",
           "twitter/bootstrap": "3.0.* as 'twitter/bootstrap3'" 
       }
   }

2 个答案:

答案 0 :(得分:2)

如果需要,可以覆盖loader对象中的命名空间。不完全同时有两个版本。但也许您想在脚本中的某个地方使用其他版本。

$reflection = new \ReflectionClass(\Composer\Autoload\ClassLoader::class);
$vendorDir = dirname(dirname($reflection->getFileName()));

$loader->set('Company\\Classname\\', $vendorDir.'/composer/../Other_company/OrOtherClassname/src');

答案 1 :(得分:0)

您不能要求两个版本,您的应用程序应该只使用一个版本的软件包。