Solucionado (ver solução)
Solucionado
(ver solução)
11
respostas

Problemas na instalação composer install

Estou com problemas para instalar novas dependências, já tenho o composer instalado na minha máquina, utilizo o Linux, mas quando digito composer install no meu projeto gera este erro:

Failed to download doctrine/inflector from dist: Could not delete /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/inflector: Now trying to download from source

  • Installing doctrine/inflector (v1.3.0): Cloning 5527a48b73 from cache

[RuntimeException] Could not delete /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/inflecto r:

11 respostas

Olá Grasiela!

O problema é com o download dessa dependência "doctrine/inflector", acho que você pode tentar:

1 - Excluir a pasta vendor

2 - Excluir o arquivo composer.lock

3 - Executar o download da dependência "doctrine/inflector" com o comando:

composer require doctrine/inflector

Tenta essa solução e coloca aqui o resultado caso não funcione pra gente poder ajudar!

Fiz como você instruiu, através deste comando a instalação das dependências foram feitas com sucesso, mas ainda estou com outro problema, após subir o servidor no terminal usando o comando "php -S localhost:8080 -t public" e abrir o projeto no navegador aparece esta mensagem de erro:

127.0.0.1:46168 [500]: /listar-cursos.php - Uncaught PDOException: could not find driver in /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:27 Stack trace:

#0 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php(27): PDO->__construct('sqlite:/opt/lam...', '', '', Array)

#1 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOSqlite/Driver.php(42): Doctrine\DBAL\Driver\PDOConnection->__construct('sqlite:/opt/lam...', NULL, NULL, Array)

Como resolver isso?

Olá Grasiela, tudo bem? Que bom que você conseguiu instalar as dependencias com sucesso, agora o problema é outro, mas acho que também não deve ser tão complicado para solucionarmos. Segundo os erros que você colocou aqui, o problema está com os drivers que você precisa pra conseguir executar a aplicação, o primeiro erro, o php reclama que não conseguiu encontrar o drive "PDOConnection" e o segundo erro ele reclama que também não conseguiu encontrar o drive "PDOSqlite", que são os drivers responsável por relizar a comunicação com o banco de dados Sqlite. Isso pode está acontecendo porque por padrão esses drivers vem desabilitados, para habilitar os mesmos, você vai precisar encontrar o arquivo php.ini, no linux você deve encontrar no caminho: /etc/php/7.x/apache2/ onde o "7.x" representa a sua versão do php instalada na sua máquina, depois abra o arquivo php.ini, com um bom editor, recomendo o vscode para isso e por fim você vai procurar a seguinte linha:

;extension=pdo_sqlite

E vai descomentar essa linha deixando ele sem o ponto e vírgula ( ; ) no início da linha:

extension=pdo_sqlite

Por fim você adiciona abaixo desse bloco de código com as "extensions" a linha:

extension=php_pdo.dll

Tenta essa solução e coloca aqui o resultado!

Alterei o arquivo php.ini mas continua ainda o erro:

127.0.0.1:39130 [500]: /listar-cursos.php - Uncaught PDOException: could not find driver in /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:27 Stack trace:

#0 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php(27): PDO->__construct('sqlite:/opt/lam...', '', '', Array)

#1 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOSqlite/Driver.php(42): Doctrine\DBAL\Driver\PDOConnection->__construct('sqlite:/opt/lam...', NULL, NULL, Array)

#2 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(362): Doctrine\DBAL\Driver\PDOSqlite\Driver->connect(Array, NULL, NULL, Array)

#3 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(1443): Doctrine\DBAL\Connection->connect()

#4 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(890): Doctrine\DBAL\Connection->getWrappedConnection()

#5 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/o in /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractSQLiteDriver.php on line 70

Grasiela, desculpe houve um equivoco da minha parte, esqueci de mencionar que você também deve adicionar abaixo desse bloco de código com as "extensions" a linha, nesse caso abaixo de extension=php_pdo.dll:

extension=php_pdo_mysql.dll

E por fim antes de testar você deve reiniciar o serviço do php que no seu caso é o serviço do apache, reinicia o serviço do apache e tente novamente!

Ainda continua o erro após a alteração da extensão.

127.0.0.1:53460 [500]: /listar-cursos - Uncaught PDOException: could not find driver in /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:27 Stack trace:

#0 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php(27): PDO->__construct('sqlite:/opt/lam...', '', '', Array)

#1 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOSqlite/Driver.php(42): Doctrine\DBAL\Driver\PDOConnection->__construct('sqlite:/opt/lam...', NULL, NULL, Array)

#2 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(362): Doctrine\DBAL\Driver\PDOSqlite\Driver->connect(Array, NULL, NULL, Array)

#3 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(1443): Doctrine\DBAL\Connection->connect()

#4 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(890): Doctrine\DBAL\Connection->getWrappedConnection()

#5 /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/o in /opt/lampp/htdocs/projeto-inicial/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractSQLiteDriver.php on line 70

Grasiela, estranho isso, você já tentou excluir a pasta vendor e executar o comando pra instalar as dependências novamente? Isso depois de ter instalado essas extensões, tenta fazer isso, caso não funcione, vamos tentar outras alternativas.

Certo, vou tentar novamente aqui.

Ainda continua o mesmo erro, removi a pasta vendor e instalei as dependências novamente, mas ao rodar o servidor e abrir a página conforme o exercício continua no mesmo erro.

solução!

Olá Grasiela,

Pela mensagem de erro o problema parece ser o driver do sqlite mesmo, está dizendo que o driver não foi encontrado, já que já foi feito a configuração pra ativar o driver como o Jonilson explicou, é provável então que ele não esteja instalado.

Confirma por favor qual é a versão do seu php, e então tenta instalar o driver de acordo com o comando abaixo:

# Exemplo PHP 7.1
sudo apt-get install php7.1-sqlite

# Exemplo PHP 7.2
sudo apt-get install php7.2-sqlite

Depois disso reinicia o servidor o servidor php e olha se funciona.

Se ainda não der certo, cria um arquivo php com o conteúdo: <?php phpinfo(); ?> e diz aqui qual é o resultado desse arquivo iniciando o servidor e abrindo no navegador.

Funcionou Lucas, muito obrigada. Instalei conforme a versão do php e deu certo.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software