Я создал пользовательский пакет, и он находится в нашем репозитории GitLab, вот для него composer.json:
{
"name": "TeamScanblox/InternalAPI_Ref",
"description": "",
"keywords": [
"swagger",
"php",
"sdk",
"api"
],
"homepage": "http://swagger.io",
"license": "proprietary",
"authors": [
{
"name": "Swagger and contributors",
"homepage": "https://github.com/swagger-api/swagger-codegen"
}
],
"require": {
"php": ">=5.5",
"ext-curl": "*",
"ext-json": "*",
"ext-mbstring": "*",
"guzzlehttp/guzzle": "^6.2"
},
"require-dev": {
"phpunit/phpunit": "^4.8",
"squizlabs/php_codesniffer": "~2.6",
"friendsofphp/php-cs-fixer": "~2.12"
},
"autoload": {
"psr-4": { "InternalAPI\\Ref\\" : "lib/" }
},
"autoload-dev": {
"psr-4": { "InternalAPI\\Ref\\" : "test/" }
}
}
Это структура верхнего уровня для него:
![Ref Package](https://i.stack.imgur.com/fpnjq.jpg)
Я включил его как «TeamScanblox / InternalAPI_Ref»: «*» в composer .json верхнего проекта, в котором я нуждаюсь, и проблема в том, что онне обрабатывается автоматически и не включается через PSR-4 в этот проект. Единственный способ включить его и работать - это добавить «InternalAPI \ Ref \»: «vendor / TeamScanblox / InternalAPI_Ref / lib /» в «psr-4» в проекте. Почему это? Что я сделал неправильно / не правильно сделал, чтобы он был автоматически загружен?
Я включил его в проект 'composer.json следующим образом:
{
"type": "package",
"package": {
"name": "TeamScanblox/InternalAPI_Ref",
"version": "1.0.0",
"type": "package",
"source": {
"url": "git@gitlab.com:TeamScanblox/InternalAPI_Ref.git",
"type": "git",
"reference": "master"
}
}
}