protected function execute(InputInterface $input, OutputInterface $output)
 {
     $path = new PathBuilder();
     $path->setModule('Uploads');
     $path = realpath(dirname(dirname(dirname(dirname(dirname(__DIR__)))))) . DIRECTORY_SEPARATOR . $path->getSourcePath();
     $path = str_replace('/src/' . 'Uploads' . '/.php', '', $path);
     if (file_exists($path)) {
         throw new \RuntimeException('A directory with the same module name already exists: ' . $path);
     }
     $templatePath = realpath(dirname(dirname(dirname(__DIR__)))) . DIRECTORY_SEPARATOR . 'templates' . DIRECTORY_SEPARATOR . 'Uploads';
     $this->copy_directory($templatePath, $path);
     $this->updateApplicationConfig('Uploads');
     $output->writeln('<info>write</info>: ' . $path);
     $output->writeln('<info>write</info>: ' . realpath(dirname(dirname(dirname(dirname(dirname(__DIR__)))))) . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'application.config.local.php');
 }