问题:
最近Laravel的后台项目, 使用到了验证码功能,故需要引入已经定义好的Code.class.php类, 一开始使用require_once "xxxxxxx"
引入到LoginController中,在 new Code()的时候未报错,忽略了。 但是后来使用到资源路由的时候,在命令行运行 php artisan route:list
时错误如下 :
解决:
1. 配置自定义类的加载问题, 因为即使命名空间和文件路径都正确,但该类文件未被加载
在composer.json
的autoload
内的classmap
项新增类包:
"autoload": {
"classmap": [
"database",
"resources/org/code" //添加自己的命名空间,路径自己定义。 注释只是为了说明,json文件中不能有注释
],
"psr-4": {
"App\\": "app/"
}
},复制代码
2. 执行命令 composer dump-autoload
3. 回到项目控制器中,如使用new Code()
类, 在前面添加 use resources\org\code\Code
(注意: 类文件名需类似Code.class.php
, 否则也找不到)