Как опубликовать пакет и установить его с помощью композитора php

StackOverflow https://stackoverflow.com//questions/24036104

  •  21-12-2019
  •  | 
  •  

Вопрос

На данный момент мне удалось опубликовать свой пакет на Packagist.Из моего репозитория, http://github.com/pbalan/directory-parser

Я последовал за Как создать библиотеку, которая будет использоваться автозагрузкой композитора?

Когда я пытаюсь установить то же самое с помощью композитора, я не могу этого сделать.Композитор не может сказать:

 Loading composer repositories with package information
 Reading composer.json of pbalan/directory-parser (0.0.1)
 Importing tag 0.0.1 (0.0.1.0)
 Reading composer.json of pbalan/directory-parser (master)
 Importing branch master (dev-master)
 Updating dependencies (including require-dev)
 Your requirements could not be resolved to an installable set of packages.

 Problem 1
  - The requested package pbalan/directory-parser 1.0.0 could not be found.

 Potential causes:
  - A typo in the package name
  - The package is not available in a stable-enough version according to your minimum-stability setting

Вот мой композитор в моем репозитории на GitHub:

 {
    "name" : "pbalan/directory-parser",
    "description" : "DirectoryParser",
    "license": "MIT",
    "keywords" : ["DirectoryParser"],
    "homepage" : "https://github.com/pbalan/directory-parser",
    "authors" : [
    {
    "name" : "prashant"
    }
    ],
    "autoload" : {
    "psr-0" : {"src" : ""}
    },
    "require" : {
    "php": ">=5.3.3"
    }
 }

И я пытаюсь установить его в новый каталог, используя этот композитор.json:

 {
   "name" : "pbalan/directory-parser",
   "description" : "DirectoryParser",
   "license": "MIT",
   "keywords" : ["DirectoryParser"],
   "homepage" : "https://github.com/pbalan/directory-parser",
   "authors" : [
    {
        "name" : "prashant"
    }
   ],
   "repositories": [
    {
        "type": "vcs",
        "url": "http://github.com/pbalan/directory-parser.git"
    }
       ],
   "require" : {
    "php": ">=5.3.3",
    "pbalan/directory-parser": "dev-master"
    }
 }

Теперь я изменил свой композитор.json до такой степени, что у меня нет ошибок, однако я не могу установить пакет и просто установить файлы автозагрузчика.

Как я могу установить свой пакет?Пожалуйста помоги!

Это было полезно?

Решение

Проблема, вероятно, в том, что вы повторно используете имя своего пакета во втором composer.json.

Просто используйте это как composer.json для вашего пустого каталога:

{
    "require": {
        "php": ">=5.3.3",
        "pbalan/directory-parser": "dev-master"
    }
}

Вот и все!Вам не нужна вся дополнительная информация, такая как имя, описание и т. д.если только вы не создаете другую библиотеку, которая также должна быть доступна на Packagist.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top