我正在尝试在Eclipse上使用Composer(首次使用)从头开始构建新的PHP项目(在git
存储库中)霓虹灯PDT Composer Eclipse Plugin和EGit。在Eclipse上使用Composer PSR-0自动加载器发现错误“Class not found”霓虹灯PDT
为了从一些非常简单的事情开始,我首先安装了着名的库PHP Markdown Lib。我想,我没有用于配置require
设置越来越问题,如跑步作曲家正确使用更新的依赖关系:
"require" : {
"php" : ">=5.3",
"michelf/php-markdown" : "~1.7"
},
如PHP降价库的文档的Usage节所述,我设置一个PSR-O-在我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的霓虹灯正确识别:
- 的
namespace
和class
正确地显示为自动完成命题(第一截图) - 库显示在文档的轮廓为导入声明(第二截图)
但是,尽管我所有的testings使用这些设置,页面仍然显示:
Fatal error: Class 'Michelf\Markdown' not found
我已经测试过其他制剂,如use \Michelf\Markdown;
:它同样由Eclipse的霓虹灯(认可自动完成功能和文档大纲,如前面的截图所示),但我仍然得到致命错误。
为确保自动加载文件更新正确,我还执行了CLI dump-autoload
命令。不幸的是,目前没有更多的成功。
现在,我想这个问题似乎是to be not directly related with PHP Markdown Lib,但我当然忘记了一个步骤或在我的设置中犯了一个错误,这似乎无法正确设置PSR-0自动加载器,即使看起来都是正确的由Eclipse IDE检测到。
尝试删除'Markdown'位,因为它看起来不像它是名称空间的一部分。 – apokryfos