Ошибка «Класс не найден» использование автозагрузчика Composer PSR-0 в Eclipse Neon PDT

В настоящее время я пытаюсь построить новый проект PHP с нуля (внутри git хранилище), используя Composer (впервые), на Eclipse Neon PDT с Композитор Eclipse Плагин а также EGit.

Чтобы начать с чего-то достаточно простого, я сначала установил известную библиотеку PHP Markdown Lib. Я думаю, что у меня не было проблем с настройкой require установка, так как запуск Composer корректно обновляет зависимости, используя:

"require" : {
"php" : ">=5.3",
"michelf/php-markdown" : "~1.7"},

Как описано в использование В разделе документации PHP Markdown Lib я установил PSR-0-совместимый автозагрузчик в своем composer.json и сгенерировал autoload файл:

"autoload" : {
"psr-0" : {
"Michelf\\Markdown" : "vendor/michelf/php-markdown/Michelf"}
},

В моем PHP-файле я просто включил следующее:

$input = file_get_contents('input.md');
use Michelf\Markdown;
$output = Markdown::defaultTransform($input);

Похоже, что Eclipse Neon правильно все распознает:

  1. namespace а также class справедливо выглядеть как автозаполнения предложения (первый скриншот)
  2. библиотека отображается в схеме документа как импортные декларации (второй скриншот)

Пространство имен класса

контур

Но, несмотря на все мои тесты с этими настройками, страница все еще показывает:

Неустранимая ошибка: класс ‘Michelf \ Markdown’ не найден

Я проверил другие составы, такие как use \Michelf\Markdown;: он одинаково распознается Eclipse Neon (функция автозаполнения и контур документа, как показано на предыдущих снимках экрана), но я все еще получаю фатальная ошибка.

Чтобы убедиться, что файл автозагрузки был обновлен правильно, я также выполнил CLI dump-autoload команда. К сожалению, без большего успеха в это время.

Прямо сейчас, я полагаю, эта проблема кажется не иметь прямого отношения к PHP Markdown Lib, но что я, безусловно, забыл шаг или допустил ошибку в моих настройках, которые, похоже, не в состоянии правильно настроить автозагрузчик PSR-0, даже если кажется, что все они правильно обнаружены в Eclipse IDE.

0

Решение

Вы не забыли включить автозагрузку композитора в начале файла?

require __DIR__ . '/vendor/autoload.php';
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]