Ответ 1
В коде есть 2 вещи.
Вы неправильно используете PSR-4.
Они удалили необходимость встраивать пространство имен в ваши папки, делая более чистый след в папке проекта.
PSR-0
vendor/<VendorName>/<ProjectName>/src/<NamespaceVendor>/<NamespaceProject>/File.php
PSR-4 (See that they removed the namespaces folders? Because you already reference that in composer.json
vendor/<VendorName>/<ProjectName>/src/File.php
Итак, в вашем случае это будет:
Vendor/myusername/src/File.php
Ваш композитор .json недействителен
"MyNamespace\\":"myusername/src"
Не включает полный путь к каталогу с кодом проекта. Это должно быть так:
"autoload": {
"psr-4": {
"MyNamespace\\": "Vendor/myusername/src"
}
}
но лучший способ сохранить ваши файлы будет вне каталога vendor
, так как он используется автоматически загружаемыми библиотеками, вместо этого выберите другой каталог "разработки":
"autoload": {
"psr-4": {
"MyUsername\\MyProject\\": "src/myusername/myproject/src"
}
}
Спасибо Свену в комментариях.