看来您可以将
vendor目录定义为其他内容(
plugins在您的情况下):
{ "config": { "vendor-dir": "plugins" }}然后,您可以将包名称重命名为其中没有级别目录,例如:
"package": { "name": "sfGuardPlugin",因此,您
composer.json应该看起来像这样:
{ "config": { "vendor-dir": "plugins" }, "repositories": [ { "type": "package", "package": { "name": "sfGuardPlugin", "version": "4.0.2", "dist": { "url": "http://plugins.symfony-project.org/get/sfGuardPlugin/sfGuardPlugin-4.0.2.tgz", "type": "tar" } } } ], "require": { "sfGuardPlugin": "4.0.*" }}编辑
使用此配置,您将获得路径(这 当然 对symfony不利):
插件/sfGuardPlugin/sfGuardPlugin-4.0.2/
我发现了一个解决方法
composer.json:
{ "config": { "vendor-dir": "plugins" }, "repositories": [ { "type": "package", "package": { "name": "sfGuardPlugin", "version": "4.0.2", "source": { "url": "http://svn.symfony-project.com/plugins/sfGuardPlugin/", "type": "svn", "reference": "branches/1.3/" } } } ], "require": { "sfGuardPlugin": "4.0.*" }}


