Não foi possível abrir o arquivo de entrada: artisan

264

Ao tentar criar um novo projeto laravel, o seguinte erro aparece na CLI:

Não foi possível abrir o arquivo de entrada: artisan

O script php artisan compilado com clareza ao manipular o evento post-install-cmd retornado com um erro

Estou usando a versão mais recente do XAMPP v3.2.1 com PHP 5.5.15 e com o mcrypt ativado (certifique-se disso emitindo o comando php -m). E eu estou executando o Windows 8.1

wessodesigner
fonte
1
Parece que esta pergunta é antiga. Você descobriu o problema? Se você não se importaria, compartilhar a questão com o resto da equipe :)
Zarathuztra
10
Eu acho que php artisan deve ser chamado da pasta raiz do site laravel. caso contrário, esse erro será exibido.
Eugine Joseph
Você precisa executar seu comando artisan no mesmo nível que seu diretório artisan. Isso garantirá que você esteja no seu projeto Laravel #
Sweet Chilly Philly
1
Sidenote: Inicialmente, pensei que quando php artisan ...era chamado, era algum tipo de opção para o phpcomando. Acontece que se refere a um arquivo chamado artisanque está na raiz do seu projeto de laravel. Realmente deveria ser chamado, artisan.phppois é um script php real, mas a extensão é omitida por questões de brevidade.
Chama

Respostas:

395

Você precisa primeiro criar o projeto Laravel e, se já possui um, precisa ir para este diretório do projeto usando o cdcomando no terminal, por exemplo cd myproject.

Agora você poderá executar qualquer comando artesanal, por exemplo, a execução php artisanexibirá uma lista dos comandos disponíveis.

Marcin Nabiałek
fonte
2
Este erro aparece quando estou tentando criar um novo projeto laravel: cd xampp / htdocs e, em seguida, compositor criar projeto laravel / laravel newLaravelProject Começa o download de todas as dependências necessárias e, de repente, esse erro aparece.
Wessodesigner # 4/14
1
Se você moveu a pasta do aplicativo com .env, pasta do fornecedor, pasta de configuração ... etc. para outro local, talvez seja necessário alterar a raiz do diretório para esse local.
Eranda
Essa deve ser a resposta selecionada. Funcionou perfeitamente!
Chad
149

Você não pode usar php artisanse você não estiver dentro de uma laravelpasta do projeto.

É por isso que diz 'Could not open input file - artisan'.

Yevgeniy Afanasyev
fonte
é claro que você tem que fazer um composer installquase um tempo
Leonardo Saracini
21

Se você projetar estiver em /home/forge/laravel-project/

Você pode executar corretamente seu artesão como este

php /home/forge/laravel-project/artisan ...

cyber8200
fonte
No Windows você pode fazerphp 'E:\path\to_your_domain\artisan' october:up
Dmitry
11

Provavelmente você não está no diretório certo!

zaffar
fonte
9

Eu só precisava tornar artisanexecutável.

chmod +x artisan

... e funciona sem o prefixo php então.

Kevin Carmody
fonte
9

Primeiro, certifique-se de estar na pasta do projeto laravel, caso contrário o terminal não poderá localizar o artisanarquivo no diretório do projeto e qualquer solicitação subsequente que você puxou para iniciar um servidor será rejeitada.

Demo

Digamos que o nome do nosso projeto laravel seja bloglocalizado em C:\laravel Temos então:C:\laravel\blog

Onde abrir o terminal

Navegue para o C:\laravel\blogdiretório e abra a janela de comando (terminal). Digite o código abaixo:

Código do terminal Laravel para iniciar o servidor

php artisan serve --host 127.0.0.1

John Zenith
fonte
6

Você deve estar na sua pasta de projeto do Laravel

Ao criar um novo projeto com laravel new project-name, uma pasta será criada com o nome do seu projeto como nome. Você deve entrar nessa pasta antes de usar qualquer php artisancomando, php artisan serveporque o arquivo artesanal está nessa pasta

Napster Scofield
fonte
5

Eu também tive o problema que acabei de instalar, mas esqueci de pular a pasta do projeto criado. Então você precisa pular a pasta do projeto.

cd project_name

e depois servir o comando php artisan

Arman H
fonte
4

Apenas verifique se você está na pasta do projeto digitando

ls

Caso contrário, vá para a pasta do projeto digitando

 cd folder_name

por exemplo:

cd laravel

E então digite

php artisan serve

Aamir Kalimi
fonte
3

Se for a sua primeira instalação do laravel, crie outro diretório / pasta dentro do diretório laravel e, em seguida, vá para essa pasta vazia e crie outro projeto usando o comando abaixo:

composer create-project --prefer-dist laravel/laravel blog

Isso criará um novo projeto chamado "blog", volte ao diretório pai laravel e agora você pode executar este comando:

php artisan serve

Você receberá o retorno como:

laravel deployment server started: http://localhost:8000

Ver imagem em anexo insira a descrição da imagem aqui

A.Aleem11
fonte
2

Tente executá-lo como sudo.

sudo laravel new blog

Seu arquivo pode não ter as permissões apropriadas. Deixe-nos saber se funcionou!

Eduardo Kasper
fonte
4
Você não pode sudo em janelas
Zarathuztra
Oh sim, meu mal. Eu estava tendo esse problema em Homestead, e era apenas permissão. Mas você está certo.
Eduardo Kasper
1
Obrigado, sudo funcionou para mim depois de ter esse problema. Eu fui transferido para o meu servidor Linux.
24517 Scott Scott
2

Fiz um check-out de um projeto existente do Laravel, que não tinha esse script. Mesmo um find / -name 'artisan'não produziu resultados. A solução acabou sendo simples, embora um pouco estranha:

curl -L 'https://raw.githubusercontent.com/laravel/laravel/v4.2.11/artisan' > artisan

Você provavelmente deseja escolher uma versão marcada que corresponda à sua versão instalada do Laravel.

DavidM
fonte
2

Se você estiver executando seu projeto Laravel no Vagrant e tiver apenas SSH-ed na máquina virtual, não se esqueça cd /vagrantantes de tentar executar comandos artesanais!

TeeJay
fonte
2

Depois de lutar com esse problema, descobri que você precisa descobrir onde o artesão reside executando sudo find / -name artisane, a partir daí, executar o comandophp artisan ....

Rebentado
fonte
1

Primeiro vá para a pasta Laravel e digite os comandos do artesão como se o nome do seu aplicativo Laravel "Demopro"

então abra o cmd e com a ajuda do comando cd vá para o Demopro e use o comando artisan

pardeep
fonte
1

Depois de criar o projeto, você deve mover-se na pasta antes de emitir o comando

Adjeiinfo
fonte
1

Eu acho que você não está no diretório do projeto laravel, basta ir ao diretório do projeto laravel usando o seguinte comando

 cd projectName
Ravi Mane
fonte
1

Depois de instalar o compositor , você precisa criar o projeto:

composer create-project laravel/laravel /path/to/tour/project

Você pode ver a documentação , para a sua versão php, o último Laravel que você pode instalar é o 5.0.

Agora dias aqui é a versão mais recente e requer> php7.0. Aqui está a documentação .

Talan
fonte
1

O que fez o truque para mim era fazer cd srcdo meu directoy projeto e , em seguida, usar o php artisancomando, já que meu artisanarquivo estava na srcpasta. Aqui está a estrutura do meu projeto:

project
|__ config
|__ src
    |__ app
    |__ ..
    |__ artisan  // hello there!
    |__ ...
|__ ...
Aleksandar
fonte
1

Este erro ocorre porque você não instalou o compositor no seu projeto.

execute o composer installcomando no caminho do projeto.

Ali Lashini
fonte
0

-> cd ..

-> cd project_dir

-> php artisan ('funciona bem')

no meu caso, removi o diretório e clonei novamente o repositório do mesmo diretório através do terminal. então eu fui um passo atrás e entrei na minha pasta de projeto novamente e o problema se foi.

sh6210
fonte
0

Apenas tente executar o comando no diretório em que reside todo o código laravel. Também aconteceu comigo, eu estava tentando executar o comando na pasta raiz do projeto, mas o código estava em um subdiretório

Ajjay Arora
fonte
0

Primeiro, crie o projeto no seguinte link para criar o projeto larave 7: Criar Projeto

Agora você precisa inserir a pasta do projeto usando o seguinte comando:

cd myproject

Agora tente executar o artisancomando, como,php artisan ,.

Ou pode acontecer se você não instalou a composição. Portanto, se você não instalou o compositor, execute composer installe tente novamente o artisancomando.

Md Riadul Islam
fonte