关于DI的Laravel 4 ReflectionException

时间:2017-11-13 13:10:50

标签: php laravel dependency-injection laravel-4

我正在开发一个代码作为一个新的开发人员,经过长时间的重构我得到一个错误,这是在困扰我。一个方法错误输出,它正在抛出一个ReflectionException: Class does not exist。这一行引发了错误:

$shippingService = App::make('ShippingServiceInterface');

实际课程当然存在。我试过运行composer dump-autoload,然后停止并再次启动流浪汉机器,但无济于事。

接口本身有两个方法,并且是命名空间。

文件夹结构与常规Laravel应用程序的不同之处在于,所有内容都存储在lib文件夹中,该文件夹完全通过composer.json自动加载。

任何想法如何追踪此问题?

编辑:

我尝试将其添加到现有服务提供商,然后运行dump-autoload,但仍然相同。

编辑2:

更奇怪的是,autoload_classmap.php我在运行dump-autoload

后看到正在加载的类

1 个答案:

答案 0 :(得分:0)

我发现错误实际上是注入的接口没有任何实现它的对象,因此实际上不能注入具体的类。