protected function setupComposer()
    {
        $composer_file = $this->getComposerJsonFile();
        $contents = json_decode(file_get_contents($composer_file), true);
        if (!isset($contents['autoload']['files'])) {
            // Cria a seção files
            $contents['autoload']['files'] = [];
        }

        $autoloader_file = $this->getAutoloaderFile();
        if (array_search($autoloader_file, $contents['autoload']['files']) === false) {
            // Adiciona o arquivo com prioridade
            $contents['autoload']['files'] = array_merge(
                [$autoloader_file],
                $contents['autoload']['files']
            );
        }

        $json_contents = str_replace("\\/", "/", json_encode($contents, JSON_PRETTY_PRINT));
        if (file_put_contents($composer_file, $json_contents) === false) {
            $this->getObfuscator()->addErrorMessage("Could not update composer.json file");
            return false;
        }

        $this->getObfuscator()->addErrorMessage("O arquivo composer.json foi configurado com sucesso.");

        return true;
    }