Композитор Symfony2 добавляет собственное требование к пакету
Как я могу установить определенный пакет (например, SonataGoutteBundle) в мой проект Symfony2 через composer?
Я пробовал это, но у меня это не работает. Есть идеи, что случилось?
"repositories": [
{
"type": "package",
"package": {
"name": "sonata-project/sonatagouttebundle",
"version": "dev-master",
"dist": {
"url": "https://github.com/sonata-project/SonataGoutteBundle.git",
"type": "git"
}
}
}
],
"require": {
"php": ">=5.3.3",
[...],
"sonata-project/sonatagouttebundle": "dev-master"
}
2
2 answers
Попробуйте что-то вроде
{
"repositories": [
{
"type": "vcs",
"url": "https://github.com/sonata-project/SonataGoutteBundle.git"
}
],
"require": {
"php": ">=5.3.3",
"vendor/bundle": "dev-master"
}
}
SonataGoutteBundle должен иметь композитора.json
В данном конкретном случае это сработало бы:
"repositories": [
{
"type": "package",
"package": {
"name": "sonata-project/goutte",
"version": "dev-master",
"source": {
"url": "https://github.com/sonata-project/SonataGoutteBundle.git",
"type": "git",
"reference": "master"
}
}
}
],
"require": {
"php": ">=5.3.3",
"sonata-project/goutte": "dev-master"
}
4
Author: Federkun, 2012-07-14 19:41:45
Вы должны предоставить ссылку на архив (например, zip) в разделе "dist". Если вы хотите использовать git, вам следует вместо этого определить раздел "источник":
{
"repositories": [
{
"type": "package",
"package": {
"name": "sonata-project/sonatagouttebundle",
"version": "dev-master",
"source": {
"url": "https://github.com/sonata-project/SonataGoutteBundle.git",
"type": "git",
"reference": "master"
}
}
}
],
"require": {
"php": ">=5.3.3",
"sonata-project/sonatagouttebundle": "dev-master"
}
}
Подробнее об определении пользовательских репозиториев: http://getcomposer.org/doc/04-schema.md#repositories
3
Author: Jakub Zalas, 2012-07-14 19:43:18