Laravel 4 注入依赖项时的Laravel ReflectionException

Laravel 4 注入依赖项时的Laravel ReflectionException,laravel-4,dependency-injection,dependencies,inversion-of-control,ioc-container,Laravel 4,Dependency Injection,Dependencies,Inversion Of Control,Ioc Container,我正在尝试在Laravel注册一些事件订阅者。我正在使用IoC将依赖项注入到类中,但我似乎无法让它工作。这是我的事件服务提供程序中的register()方法: public function register() { $this->app->events->subscribe($this->app->make('Edcs\Events\AuthEventSubscriber')); } 我也试过: public function register() {

我正在尝试在Laravel注册一些事件订阅者。我正在使用IoC将依赖项注入到类中,但我似乎无法让它工作。这是我的事件服务提供程序中的
register()
方法:

public function register()
{
    $this->app->events->subscribe($this->app->make('Edcs\Events\AuthEventSubscriber'));
} 
我也试过:

public function register()
{
    $this->app->events->subscribe('Edcs\Events\AuthEventSubscriber');
}
使用此代码时,我得到了一个
ReflectionException
异常。我的
AuthEventSubscriber
构造函数如下所示:

public function __construct(Hash $hash, Auth $auth)
{
    $this->hash = $hash;
    $this->auth = $auth;
}
我还在该类中包含正确的名称空间:

use Illuminate\Hashing\HasherInterface as Hash;
use Illuminate\Auth\AuthManager as Auth;

所以我猜当
register()
方法触发时,依赖项没有被加载-在Laravel中将依赖项注入事件订阅服务器的正确方法是什么?我也尝试过使用闭包和手动构建类,但这似乎也不起作用。

我发现我注册的事件不正确-使用上述方法必须在请求生命周期中过早地构建类。这是我现在使用的代码:

public function register()
{
    $this->app->before(function() {
         $this->app->events->subscribe($this->app->make('Edcs\Events\AuthEventSubscriber'));
    });
}