Musisz znajdować się wewnątrz projektu angular-cli, aby użyć polecenia build po ponownym zainstalowaniu angular-cli

117

Miałem zainstalowaną na całym świecie najnowszą angular-cli i mój projekt był pomyślnie budowany.

Czytając sugerowane rozwiązanie innego problemu ( https://github.com/angular/angular-cli/issues/917 ) odinstalowałem globalną angular-cli i zainstalowałem go jako zależność od deweloperów.

Ten inny problem nie został rozwiązany, więc odinstalowałem zależność od deweloperów i ponownie zainstalowałem globalnie angular-cli. Teraz, gdy próbuję wykonać kompilację ng, pojawia się błąd:

Aby użyć polecenia budowania, musisz znajdować się w projekcie angular-cli

Moja wersja angular-cli nie uległa zmianie. Dlaczego mój projekt nie jest rozpoznawany jako projekt angular-cli?

ponury
źródło
W moim przypadku musiałem zaktualizować @angular/cliz 1.6.7 do 1.6.8
JPNotADragon

Odpowiedzi:

181

Tak samo, jak odpowiedział John Pankowicz, ale w moim przypadku musiałem biec

npm install -g @angular/cli@latest

aby wersje były zgodne.

Oswaldo Salazar
źródło
6
Okazuje się, że „@ angular / cli” jest nowszą wersją „angular-cli”. Ta ostatnia jest globalnie zainstalowana w moim systemie, a pierwsza jest wymieniona w package.json. Po wymianie paczki zadziałało.
simonxy
U mnie tylko uruchomienie polecenia npm install -g @ angular / cli rozwiązało problem.
DILIP KOSURI
Tak, to zadziałało!
Naveed Aheer
U mnie też to zadziałało. Dla projektu, który otrzymałem, ważne było posiadanie pasujących wersji
Keenan Payne
Byłem w folderze WebAPI, więc musiałem przełączyć się na folder Angular CLI :)
Varun Maggo
53

Ok, znalazłem to.

package.json musi zawierać zależność od angular-cli .

Kiedy odinstalowałem lokalne angular-cli, npm usunął również wpis zależności.

ponury
źródło
7
czy mógłbyś bardziej szczegółowo wyjaśnić tę część dotyczącą zależności?
BJAA
Odinstalowanie angular-cli jako zależności dev, tj. [Npm uninstall --save-dev angular-cli] usunęło wpis z packages.json "devDependencies": {"@ angular / cli": "^ 1.0.0", " ... "} i dlatego musisz upewnić się, że ten wpis jest dostępny w" devDependencies "lub nawet w" dependencies ", jeśli to konieczne
jabu.hlong
Więc co zrobiłeś? co dokładnie odinstalowałeś? -g lub --save?
Janatbek Sharsheyev
52
npm uninstall -g angular-cli @angular/cli
npm cache clean
npm install -g @angular/cli

użyj sudo na Mac / Linux.

Winajaka
źródło
npm ERR! Począwszy od npm @ 5, pamięć podręczna npm samonaprawia się po uszkodzeniach, a dane wyodrębnione z pamięci podręcznej są prawidłowe. Jeśli chcesz się upewnić, że wszystko jest spójne, użyj zamiast tego opcji „npm cache verify”.
obeliksz
Jeśli napotkasz ten problem: nie można znaleźć modułu "@ angular-devkit / build-angular" z .... Wtedy może być również przydatne uruchomienie: npm install --save-dev @ angular-devkit / build- kątowy
Mario
do użycia na drugim etapie - siła, np.npm cache clean --force
Usman Saleh
To była jedyna rzecz, która działała dla mnie. Dzięki!
Andrew Junior Howard
24

Miałem ten sam komunikat o błędzie. Ale przyczyna i rozwiązanie są nieco inne. Kiedy uruchomiłem "ng -v", pokazało różne wersje dla angular-cli (1.0.0-beta.28.3) i @ angular / cli (1.0.0-beta.31). Ponownie uruchomiłem:

npm install -g @angular/cli

Teraz oba pokazują wersję 1.0.0-beta.31. Komunikat o błędzie zniknął, a funkcja „ng serv” działa. (Tak - to @ angular / cli został ponownie zainstalowany, a wersja angular-cli została zaktualizowana).

John Pankowicz
źródło
Zwróć uwagę, że odświeżenie angular-cli zajmuje bardzo dużo czasu, nawet godzinę. W trakcie krytycznego czasowo zadania może to zrujnować Twój projekt.
Tamás Polgár
U mnie próbowałem npm install -g angular-cli, które jest teraz przestarzałe. Musiałem npm zainstalować -g @ angular / cli
Robbie Smith
24

W moim przypadku zadziałało

sudo npm uninstall -g angular-cli @angular/cli
sudo npm cache clean --force
npm install npm@latest -g
sudo npm install -g @angular/cli
Humble Freak
źródło
2
npm install npm@latest -gmoże nie być konieczne
Devin,
15

Posługiwać się npm install angular-cli --save-dev

Pedro Henrique
źródło
6
PS To jest teraz przestarzałe ... @angular/cli
angular
Nawet to było przestarzałe, rozwiązało mój problem. Zdrowie przyjacielu.
Gabriel Muñumel
14

Wykonaj następujące polecenia krok po kroku:

sudo npm uninstall -g angular-cli @angular/cli

sudo npm cache clean

npm install npm@latest -g

sudo npm install -g @angular/cli

npm rebuild node-sass --force
Mitesh Panchal
źródło
8

To pomogło mi, gdy znalazłem się w tym samym problemie:

npm uninstall -g angular-cli @angular/cli
npm cache clean --force
npm install -g @angular/cli@latest
Devman
źródło
5
npm uninstall -g angular-cli
npm uninstall --save angular-cli
npm uninstall -g @angular/cli
npm uninstall --save @angular/cli
npm cache clean
npm install --save-dev @angular/cli@latest
jhoanna
źródło
5

W moim przypadku (Mac OS X i poprzednio używane środowisko Angular 1.5)

npm -g cache clean --force

npm cache clean --force

pracował. ( npm install -g @angular/cli@latestpóźniej)

Alex Nevidomsky
źródło
5

npm install -g @angular/cli@latestDla mnie to działa .

UmaShankar
źródło
2

Ten błąd pojawia się, gdy występuje niezgodność między wersją węzła a wersją angular / cli. dlatego użyj poniższego polecenia, aby zaktualizować wersję CLI do najnowszej

npm install -g @ angular / cli @ latest

Sunali Bandara
źródło
2
npm uninstall -g angular-cli @angular/cli

npm cache clean --force

npm install -g @angular-cli/latest

Próbowałem podobnych poleceń i działają dla mnie, ale upewnij się, że używasz ich z wiersza poleceń z uprawnieniami administratora

Onkar Nirhali
źródło
1

Miałem ten sam problem - okazało się, że zamiast @ angular / cli używam przestarzałego angular-cli. Ten ostatni był używany przez mój zespół programistów i zajęło mi trochę czasu, zanim zauważyłem, że używamy różnych wersji angular-cli.

Mac Keicam
źródło
1

Napotkałem ten sam problem podczas uruchamiania mojego projektu: dowiedziałem się, że jeśli twój projekt używa określonej wersji czegoś w package.json, dowiedz się o tym i zainstaluj konkretną wersję tych zależności, jak dla mnie, npm install @ angular / cli @ ^ 4.0.0 .

Rutvik Joshi
źródło
0

Nie zapomnij użyć --force:

npm cache clean --force
Diego Venâncio
źródło
0

Miałem podobny problem i nic nie wychodziło, ale potem postępowałem zgodnie z poniższymi krokami i zadziałało. kiedy uruchomiłem cmd jako administrator, działało dobrze dla mnie.

  1. Najpierw uruchom wiersz polecenia jako administrator ans.

  2. Utwórz nowy projekt.

Jeśli nadal nie tworzy projektu, usuń folder i wszystkie jego pliki, a następnie uruchom, ng new <project name>a następnie ng serve.

Jeśli nic nie działa, po prostu odinstaluj węzeł i każdy inny plik z nim powiązany i wykonaj powyższe kroki

Ayesha Sultana
źródło
0

Po prostu uwzględnij to w pliku package.json w sekcji devDependencies

"angular-cli": "1.0.0-beta.25.5"

Instalacja nie jest obowiązkowa, jeśli masz inną wersję CLI zainstalowaną globalnie.

Wystąpił ten problem, gdy pracowałem z angular2 i 4 jednocześnie z innym projektem. Więc angular4 - potrzebujesz angular-cli @ latest, a angular2 potrzebujesz angular-cli powyższej wersji.

Sanjay Kumar NS
źródło
0
npm uninstall -g angular-cli 

npm install -g @angular/cli

Otóż ​​to!

wprowadź opis obrazu tutaj

Bhavya Shah
źródło
1
Witamy w Stack Overflow! Dodaj kod i dane jako tekst ( używając formatowania kodu ), a nie obrazy. Obrazy: A) nie pozwalają nam kopiować - & - wklejać kodu / błędów / danych do testów; B) nie zezwalaj na wyszukiwanie na podstawie kodu / błędu / zawartości danych; i wiele innych powodów . Ogólnie kod / błędy / dane w formacie tekstowym >>>> kod / błędy / dane jako obraz >> nic. Obrazy powinny być używane, oprócz tekstu w formacie kodu, tylko wtedy, gdy posiadanie obrazu dodaje coś znaczącego, co nie jest przekazywane tylko przez kod tekstowy / błąd / dane.
podwójny sygnał dźwiękowy
Dziękuję za przyjęcie mnie. Zajmę się tym następnym razem.
Bhavya Shah
0

Może to być problem z twoją wersją.

npm install -g @angular/cli@latest

Powyższy bieg zadziałał dla mnie. Dzięki!

Jaya Sundeep
źródło