Класс HelloController не нашел ошибку в конфигурации автозагрузки композитора с psr4

Я пытаюсь создать свою собственную библиотеку композиторов. Я решил использовать psr4 для механизма автозагрузки. Он отлично работает с проектом библиотеки, но что-то идет не так, когда я добавляю эту библиотеку в другой проект в качестве зависимости. Я ожидаю, что проект библиотеки создаст экземпляр класса, который находится в основном проекте. Однако этот класс не может быть найден автозагрузчиком композитора.

Исходный код проекта моей библиотеки находится здесь: https://github.com/brnogz/kwinsey

Мой пример проекта, в котором используется эта библиотека (класс HelloWorld находится в файле controller/HelloWorld.php): //gist.github.com/brnogz/e27a1dd40ba00b818b23fe7ab8815fad


person brnogz    schedule 06.04.2016    source источник
comment
Укажите точное сообщение об ошибке и более конкретно укажите пример кода, который вы используете. В настоящее время вы ожидаете, что кто-то попытается помочь переварить всю необычную структуру MVP за один раз. Для отладки добавьте require для явного выполнения кода, который, как вы подозреваете, не может быть загружен автоматически, и посмотрите, работает ли он. Одно но: "psr-4":{ "kwinsey\\":"/" } выглядит подозрительно. Почему /, правильный путь будет . или же .   -  person Sven    schedule 06.04.2016
comment
@ Свен, ты прав. когда я исправил путь с помощью /, он начал работать. благодарю вас   -  person brnogz    schedule 07.04.2016
comment
@Sven также извините за плохой вопрос   -  person brnogz    schedule 07.04.2016


Ответы (1)


Пожалуйста, переместите все ваши исходники в подпапку src и используйте "src/" в качестве целевой папки PSR-4. Автозагрузка из корневой папки проекта в значительной степени является неопределенным поведением.

person Niels Keurentjes    schedule 07.04.2016
comment
я сделал это так, потому что я еще не использовал тест, но я преобразую структуру, как вы сказали - person brnogz; 07.04.2016