如何修复使用存储库时找不到的服务提供程序类?

时间:2016-11-19 17:41:32

标签: php laravel

我是laravel中的新手并尝试使用它,但是当我运行应用程序时它会抛出错误

未找到类'App \ Repositories \ User \ UserRepoServiceProvider

我的界面和存储库文件位于App \ Repositories \ User,其中Service Provider也位于

这是我的服务提供商

namespace App\Repositories\User

use Illuminate\Support\ServiceProvider;

class UserRepoServiceProvider extends ServiceProvider

{

public function register()
{

$this->app->bind('App\Repositories\User\userinterface','App\Repositories \User\userrepository');
}
}

这是我的userrepository.php

namespace App\Repositories\User

use App\Repositories\User\userinterface;
use App\car;

class userrepository implements userinterface
{

public function __construct(car $car){

$this->car = $car;
}

public function get($id)
{

return $this->car->findCar($id);
}

public function delete($id)
 {

return $this->car->deleteCar($id);
}


}

这是我的界面userinterface.php

namespace App\Repositories\User;

interface userinterface{

public function get($id);

public function delete($id);
}

我也在config / app.php文件中注册了它

应用\库\用户\ UserRepoServiceProvider ::类

我做了composer dump-autoload -o但没用。我不能做作曲家更新,当我这样做时会抛出相同的错误

3 个答案:

答案 0 :(得分:1)

我通常会在bootstrap / cache / config.php中检查该软件包,有时在作曲家删除该软件包的名称后,该软件包仍会在此处列出

答案 1 :(得分:0)

您必须在config / app.php中注册服务提供商。 https://laravel.com/docs/5.3/providers#registering-providers

答案 2 :(得分:0)

我遇到了这个问题 Class 'App\Respositories\BackendServiceProvider' not found 这是由于 config/app.php 文件中的拼写错误。我将 Respositories 更改为 Repositories 并打开此 BackendServiceProvider 并更改命名空间。所以问题已经解决了。

Respositories to Repositories
namespace App\Respositories to namespace App\Repositories;