Sei que esse problema foi publicado muitas vezes, mas para mim parece um problema diferente.
De fato, esse erro
Aviso: require (vendor / autoload.php): falha ao abrir o fluxo: esse arquivo ou diretório não existe em C: \ xampp \ htdocs \ site_web \ send_mail.php na linha 3
Erro fatal: require (): Falha na abertura necessária 'vendor / autoload.php' (include_path = 'C: \ xampp \ php \ PEAR') em C: \ xampp \ htdocs \ site_web \ send_mail.php na linha 3
aparece no início do meu código a partir desta linha:
require 'vendor/autoload.php';
Então, acho que deve haver um arquivo /vendor/autoload.php em algum lugar do meu computador (instalei o compositor e executei composer require phpmailer/phpmailer
).
Então, olhei para este arquivo usando: dir /s autoload.php
na linha de comando do Windows, e encontrou um aqui: C:\Windows\SysWOW64\vendor\autoload.php
,
mas para mim, a pasta syswow64 não tem nada a ver com o autoload.php , não vejo o que estou perdendo aqui.
fonte
Respostas:
O que está faltando está em execução
composer install
, o que importará seus pacotes e criará a pasta do fornecedor, junto com o script de carregamento automático.Verifique se o caminho relativo está correto. Por exemplo, os scripts de exemplo no PHPMailer estão
examples/
, abaixo da raiz do projeto, portanto, o caminho relativo correto para carregar o carregador automático do compositor seria../vendor/autoload.php
.O autoload.php que você encontrou
C:\Windows\SysWOW64\vendor\autoload.php
provavelmente é uma instalação global do compositor - onde você geralmente coloca itens como phpcs, phpunit, phpmd etc.composer update
não é a mesma coisa e provavelmente não é o que você deseja usar. Se o seu código for testado com as versões atuais do pacote, a execuçãoupdate
poderá causar quebras e exigir mais trabalho e teste, portanto, não execute aupdate
menos que você tenha um motivo específico e compreenda exatamente o que isso significa. Para esclarecer mais, você provavelmente só deve executarcomposer update
localmente, nunca no servidor, pois é provável que interrompa os aplicativos em produção.Muitas vezes vejo reclamações de que as pessoas não podem usar o compositor porque não podem executá-lo em seu servidor (por exemplo, porque é compartilhado e não tem acesso ao shell). Nesse caso, você ainda pode usar o compositer: execute-o localmente (um ambiente que não possui essas restrições) e faça o upload da pasta do fornecedor local que ele gera juntamente com todos os outros scripts PHP.
A execução
composer update
também executa aecomposer install
, se você não possui umavendor
pasta no momento (ou seja, você tem uma nova verificação de um projeto),composer install
efetivamente executa umacomposer update
, mas ainda é vital entender a diferença entre as duas, pois elas definitivamente não são intercambiáveis.Observe que também é possível atualizar um único pacote nomeando-o, por exemplo:
Isso irá resolver novamente a versão especificada no seu
composer.json
e instalá-lo na pasta do fornecedor e atualizar seucomposer.lock
arquivo para corresponder. É muito menos provável que isso cause problemas do que um general,composer update
se você precisar apenas de uma atualização específica para um pacote.O Composer 2.0 (disponível em breve) deve remover as inconsistências restantes entre os resultados da instalação e atualização.
fonte
composer install
e, em seguida, ele lerá o conteúdo do seucomposer.json
arquivo e instalará todas as suas dependências navendor
pasta. Se não estiver fazendo isso, só posso sugerir a leitura dos documentos que apontei e a verificação dupla de tudo. Esta é realmente a distinção entre "upload" e "implantação".Se você receber o erro também ao executar
Basta executar este comando primeiro
Este comando irá limpar todos os arquivos compilados e seus caminhos.
fonte
@Bashir quase me ajudou, mas eu precisava:
Encontrei a resposta aqui: https://laracasts.com/discuss/channels/general-discussion/fatal-error-class-illuminatefoundationapplication-not-found-in-pathtoprojectbootstrapappphp-on-line-14?page=0
fonte
Primeiro, verifique se você instalou o compositor.
Se você já instalou, atualize o compositor.
fonte
autoload.php
Configuração adequada :A) Resposta rápida :
Seu caminho autoload.php está errado. ie
C:\Windows\SysWOW64\vendor\autoload.php
Até o momento: você precisa alterá-lo para:C:\Users\<Windows User Name>\vendor\autoload.php
B) Passos com o exemplo: Tomaremos o facebook / php-graph-sdk como exemplo; mude para
Package Name
conforme necessário.CMD
composer require facebook/graph-sdk
require_once 'C:\Users\<Windows User Name>\vendor\autoload.php';
Secrets
eAccess Token
para o seu pacote ... etc.C) Mais detalhes:
A instalação do compositor no Windows definirá esse caminho padrão para seus pacakges; você pode encontrá-los lá e incluir o caminho do carregador automático:
Para a mesma pergunta que você fez; a resposta foi esse caminho para o WAMP Server 64 BIT para Windows .
Então, simplesmente em seu aplicativo PHP, mude isso:
Para:
Encontre o nome de usuário do Windows em
C:\Users\
Antes de tudo isso, como apontado anteriormente em B), você precisa executar este comando:
para facebook php SDK, por exemplo:
Obrigado por fazer esta pergunta; apreciado, pois me ajudou a corrigir um problema semelhante e terminou de escrever este tutorial simples.
fonte
Se você clonou seu projeto no Github ou o obteve de outro lugar, encontrará esse erro. Isso ocorre porque você está perdendo a pasta do fornecedor e outros arquivos. A pasta do fornecedor contém pacotes que dependem do seu projeto. As dependências do pacote são armazenadas no
composer.json
arquivo e a pasta foi excluída enquanto você empurra para o Github .Corrija este erro simplesmente executando:
composer install
Então você receberá todos os ativos necessários para o seu projeto.
fonte
correr
composer update
. É isso aífonte
Eu tinha esse caminho na minha máquina:
Então eu corri
composer install
ou / ecomposer update
retornou este erro:Esse erro ocorre porque seu caminho é muito longo, mudei para:
e trabalhou!
fonte
Consegui resolver removendo o compositor e reinstalando da maneira correta. Aqui está o que eu fiz:
Pude instalar o compositor para funcionar novamente. Encontrei minha resposta na parte inferior desta edição: https://github.com/composer/composer/issues/5510
fonte
Primeiro, revise a rota dentro do index.php
no meu caso, a rota não funcionou, tive que revisar os diretórios.
fonte
Na pasta do projeto, a pasta do fornecedor está ausente, e você recebeu este erro:
Quando você baixa o projeto através do git , o projeto é baixado sem a pasta do fornecedor
Você precisa
/vendor
porque todos os seus pacotes estão lá, incluindo todas as classes que o Laravel usa. O diretório do fornecedor contém suas dependências do Composer.A solução é simples, basta executar este comando:
composer update --no-scripts
Ignora a execução dos scripts definidos nocomposer.json
arquivo.composer update
Ele atualizará suas dependências conforme elas são especificadas nocomposer.json
arquivo.Com este comando, você recriará a pasta do fornecedor em seu projeto e, depois disso, seu projeto começará a funcionar normalmente.
fonte
Haverá um diretório chamado "fornecedor" que precisa estar no diretório raiz se você tiver um repositório clonado e tentar configurar nesse momento esse tipo de erro.
O arquivo ".gitingore" escreveu um código para não incluir o diretório do fornecedor no GIT, portanto, após a clonagem do GIT, seu projeto enfrenta o problema do diretório do fornecedor ausente.
Depois de adicionar o diretório do fornecedor, seu projeto começará a funcionar novamente.
fonte
Crie o arquivo composer.json com a biblioteca necessária para ex:
Execute o comando abaixo, onde existe compositer.json:
No caso de Drupal:
Use a pasta raiz da web do drupal para incluir o carregamento automático para ex:
No caso de outros sistemas: Use a variável ou o local da pasta raiz para incluir o autoload.php
fonte
Para mim Apenas execute este comando primeiro
para adicionar uma pasta de fornecedor.
então execute este comando
para atualizar o compositor.
fonte
Este erro ocorre devido à falta de alguns arquivos e o principal motivo é " Compositor "
Primeiro, execute esses comandos no CMD
Em seguida, crie um novo projeto de
exemplo:
Depois disso, inicie o servidor usando
fonte
Altere a propriedade auto_prepend_file no php.ini
fonte