添加服务提供者类后找不到类
Posted
技术标签:
【中文标题】添加服务提供者类后找不到类【英文标题】:Class not found after adding Service Provider class 【发布时间】:2014-10-10 02:52:06 【问题描述】:我正在尝试扩展 Validator 类。这样我的文本字段在添加空间时不会返回 false。
我正在创建一个类似 app\extension\validation 的文件夹
这是我的 CustomValidation 类
<?php namespace App\Extension\Validation;
use Illuminate\Validation\Validator;
class CustomValidation extends Validator
public function alpha_spaces($attribute, $value, $parameters)
if(preg_match("/^([-a-z0-9_ ])+$/i", $value))
return true;
return false;
这是同一文件夹中的 ValidationServiceProvider 类
<?php namespace App\Extension\Validation;
use Illuminate\Support\ServiceProvider;
class ValidationServiceProvider extends ServiceProvider
public function register()
public function boot()
$this->app->validator->resolver(function($translator, $data, $rules, $messages)
return new CustomValidation($translator, $data, $rules, $messages);
);
这是我尝试将服务提供者添加到 app.php 时遇到的错误
Class 'App\Extension\Validation\ValidationServiceProvider' not found
我在 app\Extension\Validation 中有类作为 ValidationServiceProvider.php
有谁知道我为什么会遇到这个问题。我整天都被困在这个问题上,我需要别人的帮助。
【问题讨论】:
您是否已将路径添加到您的作曲家自动加载文件并运行composer dump
?
【参考方案1】:
您需要将文件夹"app/Extension"
添加到composer.json
的autoload > classmap
属性,如下所示:
"autoload":
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/tests/TestCase.php",
"app/Extension"
]
完成此操作后,composer 知道它应该从 "app/Extension"
加载类
然后执行
composer dump-autoload
【讨论】:
非常感谢。这节省了我的时间。以上是关于添加服务提供者类后找不到类的主要内容,如果未能解决你的问题,请参考以下文章