Nie można otworzyć pliku wejściowego: rzemieślnik

264

Podczas próby utworzenia nowego projektu laravel na interfejsie CLI pojawia się następujący błąd:

Nie można otworzyć pliku wejściowego: rzemieślnik

Skrypt php rzemieślnik wyczyścił skompilowaną obsługę zdarzenia po instalacji cmd zwróconego z błędem

Używam najnowszej wersji XAMPP v3.2.1 z PHP 5.5.15 i włączoną funkcją mcrypt (upewnij się, że wydałem komendę php -m). I korzystam z systemu Windows 8.1

wessodesigner
źródło
1
Wygląda na to, że to pytanie jest stare. Odkryłeś problem? Jeśli nie masz nic przeciwko, podziel się tym pytaniem z resztą składu :)
Zarathuztra,
10
Myślę, że php rzemieślnik powinien być wywoływany z folderu głównego witryny laravel. w przeciwnym razie ten błąd wyskoczy.
Eugine Joseph
Musisz uruchomić polecenie rzemieślnika na tym samym poziomie, co katalog rzemieślników. To sprawi, że będziesz w swoim projekcie Laravel
Sweet Chilly Philly
1
Sidenote: Początkowo myślałem, że kiedy php artisan ...został wywołany, była to jakaś opcja dla phppolecenia. Okazuje się, że odnosi się do pliku o nazwie artisanznajdującej się w katalogu głównym projektu laravel. Naprawdę powinien zostać wywołany, artisan.phpponieważ jest to rzeczywisty skrypt php, ale rozszerzenie zostało pominięte ze względu na zwięzłość.
Płomień

Odpowiedzi:

395

Najpierw musisz utworzyć projekt Laravel, a jeśli już go masz, musisz przejść do katalogu tego projektu, używając cdna przykład polecenia w terminalu cd myproject.

Teraz będziesz mógł uruchamiać dowolne polecenia rzemieślnika, na przykład uruchomienie php artisanwyświetli listę dostępnych poleceń.

Marcin Nabiałek
źródło
2
Ten błąd pojawia się, gdy próbuję utworzyć nowy projekt laravel: cd xampp / htdocs, a następnie kompozytor create-project laravel / laravel newLaravelProject Zaczyna pobierać wszystkie wymagane zależności i nagle pojawia się ten błąd.
wessodesigner
1
Jeśli folder aplikacji został przeniesiony z .env, folderem dostawcy, folderem konfiguracji ... itd. Do innego miejsca, może być konieczna zmiana katalogu głównego katalogu na tę lokalizację.
Eranda,
To powinna być wybrana odpowiedź. Działa idealnie!
Czad
149

Nie możesz użyć, php artisanjeśli nie jesteś w laravelfolderze projektu.

Dlatego mówi 'Could not open input file - artisan'.

Jewgienij Afanasiew
źródło
oczywiście musisz zrobić composer installprawie raz
Leonardo Saracini
21

Jeśli projekt jest w /home/forge/laravel-project/

Możesz poprawnie wykonać swojego rzemieślnika w ten sposób

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

cyber8200
źródło
W systemie Windows możesz to zrobićphp 'E:\path\to_your_domain\artisan' october:up
Dmitry
11

Najprawdopodobniej nie masz odpowiedniego katalogu!

zaffar
źródło
9

Musiałem tylko wykonać artisanplik wykonywalny.

chmod +x artisan

... i działa wtedy bez prefiksu php.

Kevin Carmody
źródło
9

Po pierwsze, upewnij się, że znajdujesz się w folderze projektu laravel, w przeciwnym razie terminal nie będzie w stanie zlokalizować artisanpliku w katalogu projektu, a każde kolejne żądanie, które ściągniesz, aby uruchomić serwer, zostanie odrzucone.

Próbny

Powiedzmy, że nazwa naszego projektu laravel znajduje blogsię w: C:\laravel Mamy wtedy:C:\laravel\blog

Gdzie otworzyć terminal

Przejdź do C:\laravel\blogkatalogu i otwórz okno poleceń (terminal). Wpisz kod poniżej:

Kod terminala Laravel, aby uruchomić serwer

php artisan serve --host 127.0.0.1

John Zenith
źródło
6

Musisz znajdować się w folderze projektu Laravel

Podczas tworzenia nowego projektu za laravel new project-namepomocą zostanie utworzony folder z nazwą projektu jako nazwą. Musisz wejść do tego folderu przed użyciem jakiegokolwiek php artisanpolecenia, np. php artisan servePonieważ plik rzemieślnika znajduje się w tym folderze

Napster Scofield
źródło
5

Miałem również problem, który właśnie zainstalowałem, ale zapomniałem przeskoczyć utworzony folder projektu. Musisz więc przeskoczyć folder projektu.

cd nazwa_projektu

a następnie służyć komendą php rzemieślnik

Arman H.
źródło
4

Upewnij się, że jesteś w folderze projektu, pisząc

ls

Jeśli nie, przejdź do folderu projektu, pisząc

 cd folder_name

na przykład:

cd laravel

A potem wpisz

php artisan serve

Aamir Kalimi
źródło
3

Jeśli jest to Twoja pierwsza instalacja laravel, utwórz inny katalog / folder w katalogu laravel, a następnie przejdź do tego pustego folderu i utwórz kolejny projekt, używając poniższego polecenia:

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

Spowoduje to utworzenie nowego projektu o nazwie „blog”, a następnie powrót do nadrzędnego katalogu laravel i teraz możesz uruchomić to polecenie:

php artisan serve

Otrzymasz zwrot, taki jak:

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

Zobacz załączony obraz wprowadź opis zdjęcia tutaj

A.Aleem11
źródło
2

Spróbuj wykonać to jako sudo.

sudo laravel new blog

Twój plik może nie mieć odpowiednich uprawnień. Daj nam znać, czy to zadziałało!

Eduardo Kasper
źródło
4
Nie można sudo na
Windowsie
O tak, moje złe. Miałem ten problem na Homestead i było to tylko pozwolenie. Ale masz rację.
Eduardo Kasper,
1
Dzięki, sudo pracowało dla mnie po tym problemie. Zostałem ssh-edowany na mój serwer Linux.
Scott
2

Sprawdziłem istniejący projekt Laravel, który nie miał tego skryptu. Nawet find / -name 'artisan'nie przyniosło żadnych rezultatów. Rozwiązanie okazało się proste, choć nieco dziwne:

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

Prawdopodobnie chcesz wybrać oznaczoną wersję, która pasuje do zainstalowanej wersji Laravela.

DavidM
źródło
2

Jeśli prowadzisz projekt Laravel w Vagrant i masz właśnie SSH-ed na maszynie wirtualnej, nie zapomnij, cd /vagrantzanim spróbujesz uruchomić polecenia rzemieślnika!

TeeJay
źródło
2

Po zmaganiu się z tym problemem dowiedziałem się, że musisz dowiedzieć się, gdzie mieszka rzemieślnik sudo find / -name artisan, a następnie uruchomić poleceniephp artisan ....

Odpadł
źródło
1

Najpierw przejdź do folderu Laravel, a następnie wpisz polecenia rzemieślnika, np. Jeśli nazwa aplikacji Laravel to „Demopro”

więc otwórz cmd i za pomocą polecenia cd przejdź do Demopro, a następnie użyj polecenia rzemieślnika

przepraszam
źródło
1

Po utworzeniu projektu należy przejść do folderu przed wydaniem polecenia

Adjeiinfo
źródło
1

Myślę, że nie jesteś w katalogu projektu laravel, po prostu przejdź do katalogu projektu laravel za pomocą następującego polecenia

 cd projectName
Ravi Mane
źródło
1

Po zainstalowaniu kompozytora musisz utworzyć projekt:

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

Możesz zobaczyć dokumentację , dla twojej wersji php najnowszy Laravel, jaki możesz zainstalować, to 5.0.

Teraz dni są ostatnią wersją i wymagają> php7.0. Oto dokumentacja .

Talan
źródło
1

Co wystarczyły dla mnie było to zrobić cd srcz moim directoy projektu, a następnie użyj php artisanpolecenia, ponieważ mój artisanplik znajdował się w srcfolderze. Oto struktura mojego projektu:

project
|__ config
|__ src
    |__ app
    |__ ..
    |__ artisan  // hello there!
    |__ ...
|__ ...
Aleksandar
źródło
1

Ten błąd występuje, ponieważ nie zainstalowałeś kompozytora w swoim projekcie.

uruchom composer installpolecenie w ścieżce projektu.

Ali Lashini
źródło
0

-> cd ..

-> cd katalog_projektu

-> php artisan („działa dobrze”)

w moim przypadku usunąłem katalog i ponownie sklonowałem repozytorium z tego samego katalogu przez terminal. potem cofnąłem się o krok i wróciłem do folderu projektu i problem zniknął.

sh6210
źródło
0

Po prostu spróbuj wykonać polecenie w katalogu, w którym znajduje się cały kod laravel. Zdarzyło mi się również, że próbowałem uruchomić polecenie w folderze głównym projektu, ale kod znajdował się w podkatalogu

Ajjay Arora
źródło
0

Najpierw utwórz projekt z następującego łącza, aby utworzyć projekt larave 7: Utwórz projekt

Teraz musisz wprowadzić folder projektu za pomocą następującego polecenia:

cd myproject

Teraz spróbuj uruchomić artisanpolecenie, takie jak php artisan,.

Lub może się zdarzyć, jeśli nie zainstalujesz tworzenia. Więc jeśli nie zainstalowałeś kompozytora, uruchom composer installi spróbuj ponownie artisan.

Md Riadul Islam
źródło