1
resposta

Erro na instalação das dependências

Instalei o Composer na versão 2.8.5 porém ao tentar instalar as dependências (guzzle e domcrawler) aparecem falhas no cmd:

Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 8 installs, 0 updates, 0 removals Failed to download symfony/deprecation-contracts from dist: The zip extension and unzip/7z commands are both missing, skipping. The php.ini used by your command-line PHP is: C:\php\php.ini Now trying to download from source

  • Syncing symfony/deprecation-contracts (v3.5.1) into cache Failed to download psr/http-message from dist: The zip extension and unzip/7z commands are both missing, skipping. The php.ini used by your command-line PHP is: C:\php\php.ini Now trying to download from source
  • Syncing psr/http-message (2.0) into cache Failed to download psr/http-client from dist: The zip extension and unzip/7z commands are both missing, skipping. The php.ini used by your command-line PHP is: C:\php\php.ini Now trying to download from source
  • Syncing psr/http-client (1.0.3) into cache Failed to download ralouphie/getallheaders from dist: The zip extension and unzip/7z commands are both missing, skipping. The php.ini used by your command-line PHP is: C:\php\php.ini Now trying to download from source
  • Syncing ralouphie/getallheaders (3.0.3) into cache Failed to download psr/http-factory from dist: The zip extension and unzip/7z commands are both missing, skipping. The php.ini used by your command-line PHP is: C:\php\php.ini Now trying to download from source
  • Syncing psr/http-factory (1.1.0) into cache Failed to download guzzlehttp/psr7 from dist: The zip extension and unzip/7z commands are both missing, skipping. The php.ini used by your command-line PHP is: C:\php\php.ini Now trying to download from source
  • Syncing guzzlehttp/psr7 (2.7.0) into cache Failed to download guzzlehttp/promises from dist: The zip extension and unzip/7z commands are both missing, skipping. The php.ini used by your command-line PHP is: C:\php\php.ini Now trying to download from source
  • Syncing guzzlehttp/promises (2.0.4) into cache Failed to download guzzlehttp/guzzle from dist: The zip extension and unzip/7z commands are both missing, skipping. The php.ini used by your command-line PHP is: C:\php\php.ini Now trying to download from source

Marquei os erros em negrito para mais fácil visualização, alguém pode me ajudar?

1 resposta

Olá Felipe! Tudo bem?

Parece que você está enfrentando um problema comum ao instalar dependências com o Composer, relacionado à falta da extensão zip no PHP e dos comandos unzip ou 7z no seu sistema. Vamos tentar resolver isso!

  1. Habilitar a extensão zip no PHP:

    • Abra o arquivo php.ini que está sendo utilizado pelo seu PHP CLI. De acordo com a mensagem de erro, ele está localizado em C:\php\php.ini.
    • Procure por uma linha que contenha ;extension=zip. Se encontrar, remova o ponto e vírgula ; no início da linha para habilitar a extensão.
    • Caso não encontre a linha, adicione extension=zip no arquivo.
    • Salve o arquivo e reinicie o servidor ou o terminal para aplicar as mudanças.
  2. Instalar o comando unzip ou 7z:

    • Se você estiver usando Windows, pode instalar o 7-Zip, que é um utilitário de arquivamento que inclui o comando 7z. Você pode baixá-lo do site oficial do 7-Zip e instalá-lo.
    • Certifique-se de que o caminho para o executável 7z está incluído na variável de ambiente PATH do seu sistema, para que ele possa ser chamado a partir do terminal.

Depois de realizar essas alterações, tente novamente instalar as dependências com o Composer. Com a extensão zip habilitada e o comando unzip ou 7z disponível, o Composer deve conseguir baixar e instalar as dependências sem problemas.

Espero ter ajudado e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!