如何指定Composer安装路径?
我有这个定义:
{ "repositories": [
{
"type": "package",
"package": {
"name": "symfony/sfGuardPlugin",
"version": "4.0.2",
"dist": {
"url": "http://plugins.symfony-project.org/get/sfGuardPlugin/sfGuardPlugin-4.0.2.tgz",
"type": "tar"
}
}
}
],
"require": {
"symfony/sfGuardPlugin": "4.0.*"
}
}
我正在使用Symfony 1,并且想在上安装它们plugins/sfGuardPlugin/
。我该如何指定?
回答:
看来您可以将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.*"
}
}
以上是 如何指定Composer安装路径? 的全部内容, 来源链接: utcz.com/qa/434439.html