Laravel 供应商自动加载不起作用
Posted
技术标签:
【中文标题】Laravel 供应商自动加载不起作用【英文标题】:Laravel vendor autoloading doesn't work 【发布时间】:2016-02-08 10:48:38 【问题描述】:目前,我是包开发的新手,很难创建新包。至此,我想制作一个新包,但自动加载(PSR-4 和类映射)似乎不起作用。我得到类未找到异常。我试图到处寻找我的问题的答案,但仍然没有找到任何帮助。
这是我的 composer.json 文件:
"name": "imamassi/tree",
"description": "Tree generator from an array/object with parent id",
"license": "MIT",
"authors": [
"name": "Imam Assidiqqi",
"email": "assidiqqi.imam@gmail.com"
],
"minimum-stability": "dev",
"require": ,
"autoload":
"psr-4":
"Imamassi\\": "src/"
,
"classmap":["src/"]
我的包目录:
我已经花了几个小时才弄清楚如何完成这项工作,希望我能在这里找到答案:)
注意:我已经做了几次dump-autoload,仍然无法完成这项工作。
【问题讨论】:
【参考方案1】:自动加载路径必须指向使用命名空间的确切目录。
这意味着你的composer.json
:
"autoload":
"psr-4":
"Imamassi\\": "src/Imamassi"
更改主composer.json
的自动加载部分后,不要忘记通过以下方式重建自动加载缓存:
composer dump-autoload
【讨论】:
但我想加载 Tree.php (src/tree.php) 文件 这将加载该目录中具有此命名空间的每个类。以上是关于Laravel 供应商自动加载不起作用的主要内容,如果未能解决你的问题,请参考以下文章