php - ProviderRepository.php 第 146 行中的 FatalErrorException : Cannot instantiate abstract class App\Modules\ModuleServiceProvider

标签 php laravel error-handling fatal-error

我在我的项目中使用了 laravel 5.2。
对于模块化方法,我在 app > modules 和 modules > user 中有模块。

模块 > ModuleServiceProvider.php 如下:

<?php namespace App\Modules;

use \Illuminate\Support\ServiceProvider as ServiceProvider;
abstract class ModuleServiceProvider extends  ServiceProvider{

  public function boot() {
    if ($module = $this->getModule(func_get_args())) {
      $this->package("app/" . $module, $module, app_path() . "/modules/" . $module);
    }
  }

  public function register() {

    if ($module = $this->getModule(func_get_args())) {
      $this->app["config"]->package("app/" . $module, app_path() . "/modules/" . $module . "/config");

        // Add routes
      $routes = app_path() . "/modules/" . $module . "/routes.php";
      if (file_exists($routes))
        require $routes;
    }
  }

  public function getModule($args) {
    $module = (isset($args[0]) and is_string($args[0])) ? $args[0] : null;
    return $module;
  }

}

?>

我的 LeadServiceProvider.php 就像
<?php  namespace App\Modules\Lead;

 class LeadServiceProvider extends \App\Modules\ModuleServiceProvider {

public function register()
{
    parent::register("user");
}

public function boot()
{
    parent::boot("user");
}
/**
 * Register any application services.
 *
 * @return void
 */


}

我也把它写在我的 app.php 提供程序中



App\Modules\ModuleServiceProvider::class, App\Modules\Lead\LeadServiceProvider::class,



也写在 composer.json 中。

但它给出了错误

FatalErrorException in ProviderRepository.php line 146: Cannot instantiate abstract class App\Modules\ModuleServiceProvider

最佳答案

您不能实例化抽象类。抽象类必须由另一个类扩展。但是,您的 ModuleServiceProvider不包含任何抽象方法,因此它不需要是抽象的。放弃abstract来自您的服务提供商的关键字,这应该可以解决问题。

关于php - ProviderRepository.php 第 146 行中的 FatalErrorException : Cannot instantiate abstract class App\Modules\ModuleServiceProvider,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34902235/

相关文章:

sql-server - 如何处理SQL Server T-SQL try-catch block 中丢失的客户端连接?

php - 可以同时执行两个或多个查询吗?

php - 如何仅使用新元素更新 json 文件?

php - 模型数组的 Codeigniter 错误

php - 内部加入 laravel 5.2

php - 组相关产品属性

android - 无法在 ACRA 4.7.0 中解析方法 'formKey'

error-handling - Camel 交易错误

php - 无法将数据从mysql数据库获取到arduino变量

Laravel Bootstrap 模态提交按钮不起作用