scribe: FatalThrowableError?

Hello everyone,

I have migrated from laravel-apidoc-generator and I am having some problems to generate the docs with this package.

Am I doing something wrong?

When trying to generate the docs with php artisan scribe:generate I am getting the following error:

 Symfony\Component\Debug\Exception\FatalThrowableError  : Argument 1 passed to Knuckles\Scribe\Tools\DocumentationConfig::__construct() must be of the type array, null given, called in C:\laragon\www\LEI-API-Frontend\vendor\knuckleswtf\scribe\src\Commands\GenerateDocumentation.php on line 204

  at C:\laragon\www\LEI-API-Frontend\vendor\knuckleswtf\scribe\src\Tools\DocumentationConfig.php:9
     5| class DocumentationConfig
     6| {
     7|     private $data;
     8|
  >  9|     public function __construct(array $config = [])
    10|     {
    11|         $this->data = $config;
    12|     }
    13|

  Exception trace:

  1   Knuckles\Scribe\Tools\DocumentationConfig::__construct()
      C:\laragon\www\LEI-API-Frontend\vendor\knuckleswtf\scribe\src\Commands\GenerateDocumentation.php:204

  2   Knuckles\Scribe\Commands\GenerateDocumentation::bootstrap()
      C:\laragon\www\LEI-API-Frontend\vendor\knuckleswtf\scribe\src\Commands\GenerateDocumentation.php:62

  Please use the argument -v to see more details.
 Symfony\Component\Debug\Exception\FatalThrowableError  : Argument 1 passed to Knuckles\Scribe\Tools\DocumentationConfig::__construct() must be of the type array, null given, called in C:\laragon\www\LEI-API-Frontend\vendor\knuckleswtf\scribe\src\Commands\GenerateDocumentation.php on line 204

  at C:\laragon\www\LEI-API-Frontend\vendor\knuckleswtf\scribe\src\Tools\DocumentationConfig.php:9
     5| class DocumentationConfig
     6| {
     7|     private $data;
     8|
  >  9|     public function __construct(array $config = [])
    10|     {
    11|         $this->data = $config;
    12|     }
    13|

  Exception trace:

  1   Knuckles\Scribe\Tools\DocumentationConfig::__construct()
      C:\laragon\www\LEI-API-Frontend\vendor\knuckleswtf\scribe\src\Commands\GenerateDocumentation.php:204

  2   Knuckles\Scribe\Commands\GenerateDocumentation::bootstrap()
      C:\laragon\www\LEI-API-Frontend\vendor\knuckleswtf\scribe\src\Commands\GenerateDocumentation.php:62

  3   Knuckles\Scribe\Commands\GenerateDocumentation::handle(Object(Knuckles\Scribe\Matching\RouteMatcher))
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:32

  4   call_user_func_array()
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:32

  5   Illuminate\Container\BoundMethod::Illuminate\Container\{closure}()
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Container\Util.php:36

  6   Illuminate\Container\Util::unwrapIfClosure(Object(Closure))
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:90

  7   Illuminate\Container\BoundMethod::callBoundMethod(Object(Illuminate\Foundation\Application), Object(Closure))
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:34

  8   Illuminate\Container\BoundMethod::call(Object(Illuminate\Foundation\Application), [])
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Container\Container.php:590

  9   Illuminate\Container\Container::call()
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Console\Command.php:134

  10  Illuminate\Console\Command::execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
      C:\laragon\www\LEI-API-Frontend\vendor\symfony\console\Command\Command.php:255

  11  Symfony\Component\Console\Command\Command::run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Illuminate\Console\OutputStyle))
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Console\Command.php:121

  12  Illuminate\Console\Command::run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
      C:\laragon\www\LEI-API-Frontend\vendor\symfony\console\Application.php:1000

  13  Symfony\Component\Console\Application::doRunCommand(Object(Knuckles\Scribe\Commands\GenerateDocumentation), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
      C:\laragon\www\LEI-API-Frontend\vendor\symfony\console\Application.php:271

  14  Symfony\Component\Console\Application::doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
      C:\laragon\www\LEI-API-Frontend\vendor\symfony\console\Application.php:147

  15  Symfony\Component\Console\Application::run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Console\Application.php:93

  16  Illuminate\Console\Application::run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
      C:\laragon\www\LEI-API-Frontend\vendor\laravel\framework\src\Illuminate\Foundation\Console\Kernel.php:131

  17  Illuminate\Foundation\Console\Kernel::handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
      C:\laragon\www\LEI-API-Frontend\artisan:37

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 25 (8 by maintainers)

Most upvoted comments

Did you clear your config cache?

No, in scribe.php ‘type’ => ‘static’, I only change in scribe.php the route match->prefixes to [‘api/*’]

I dont know if i need to make more modifications on scribe.php…

Are you using laravel views?? That was the reason why it wouldnt work on my side…

Just uninstall the mpociot/laravel-apidoc-generator and install the scribe… but the error continues !!!

`Argument 1 passed to Knuckles\Scribe\Tools\DocumentationConfig::__construct() must be of the type array, null given, called in /var/www/vhosts/xxxxxxxxx/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php on line 204

at vendor/knuckleswtf/scribe/src/Tools/DocumentationConfig.php:9 5| class DocumentationConfig 6| { 7| private $data; 8|

9| public function __construct(array $config = []) 10| { 11| $this->data = $config; 12| } 13|

  +16 vendor frames 

17 artisan:37 Illuminate\Foundation\Console\Kernel::handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) `

I clean cache, same results.

@pirex360 You have the wrong package. This is not mpociot/apidoc but knuckleswtf/scribe. It is a completely new package.