Você deve estar dentro de um projeto angular-cli para usar o comando build após reinstalar o angular-cli

117

Eu tinha o mais recente angular-cli instalado globalmente e meu projeto estava sendo construído com sucesso.

Ao ler uma solução sugerida para outro problema, ( https://github.com/angular/angular-cli/issues/917 ), desinstalei o angular-cli global e instalei-o como uma dependência de desenvolvimento.

Esse outro problema não foi resolvido, então desinstalei a dev-dependency e reinstalei o angular-cli globalmente mais uma vez. Agora, quando tento fazer um ng build , recebo o erro:

Você tem que estar dentro de um projeto angular-cli para usar o comando build

Minha versão angular-cli não mudou. Por que meu projeto não está sendo reconhecido como um projeto angular-cli ??

severo
fonte
No meu caso, tive que atualizar @angular/clide 1.6.7 para 1.6.8
JPNotADragon

Respostas:

181

Igual à resposta de John Pankowicz, mas no meu caso eu tive que correr

npm install -g @angular/cli@latest

para que as versões correspondam.

Oswaldo Salazar
fonte
6
Acontece que "@ angular / cli" é a versão mais recente de "angular-cli". O último está instalado globalmente em meu sistema e o anterior está listado em package.json. Depois de substituir o pacote, funcionou.
simonxy
Para mim, apenas executar o comando npm install -g @ angular / cli resolveu o problema.
DILIP KOSURI
Sim, funcionou!
Naveed Aheer
Isso funcionou para mim também. Era importante para o projeto que me deram as versões correspondentes
Keenan Payne
Eu estava na pasta WebAPI, então tive que mudar para a pasta Angular CLI :)
Varun Maggo
53

Ok, encontrei.

package.json deve conter uma dependência para angular-cli .

Quando desinstalei meu angular-cli local, o npm também removeu a entrada de dependência.

severo
fonte
7
você poderia explicar com mais detalhes aquela parte sobre a dependência?
BJAA de
A desinstalação do angular-cli como uma dependência dev, ou seja, [npm uninstall --save-dev angular-cli] removeu uma entrada de packages.json "devDependencies": {"@ angular / cli": "^ 1.0.0", " ... "} e, portanto, você precisa garantir que esta entrada esteja disponível em" devDependencies "ou mesmo" dependencies "se necessário
jabu.hlong
Então o que você fez? o que exatamente você desinstalou? -g ou --save?
Janatbek Sharsheyev
52
npm uninstall -g angular-cli @angular/cli
npm cache clean
npm install -g @angular/cli

use sudo no Mac / Linux.

Vinayaka
fonte
npm ERR! A partir do npm @ 5, o cache do npm se auto-recupera de problemas de corrupção e os dados extraídos do cache têm garantia de validade. Se você quiser ter certeza de que tudo está consistente, use 'npm cache verify'.
obeliksz
Se você enfrentar este problema: Não foi possível encontrar o módulo "@ angular-devkit / build-angular" de .... Então, pode ser útil executar também: npm install --save-dev @ angular-devkit / build- angular
Mario
para a 2ª etapa, use - força por exemplonpm cache clean --force
Usman Saleh
Essa foi a única coisa que funcionou para mim. Obrigado!
Andrew Junior Howard
24

Eu tive a mesma mensagem de erro. Mas a causa e a solução são ligeiramente diferentes. Quando executei "ng -v", ele mostrou diferentes versões para angular-cli (1.0.0-beta.28.3) e @ angular / cli (1.0.0-beta.31). Eu corri novamente:

npm install -g @angular/cli

Agora ambos mostram uma versão 1.0.0-beta.31. A mensagem de erro desapareceu e "ng serve" agora funciona. (Sim - foi @ angular / cli que reinstalei e a versão do angular-cli foi atualizada.)

John Pankowicz
fonte
Observe que leva muito tempo para atualizar o angular-cli, até uma hora. No meio de uma tarefa de tempo crítico, pode condenar seu projeto.
Tamás Polgár
Para mim, eu estava tentando npm install -g angular-cli, que agora está obsoleto. Tive que instalar por npm -g @ angular / cli
Robbie Smith
24

Funcionou no meu caso

sudo npm uninstall -g angular-cli @angular/cli
sudo npm cache clean --force
npm install npm@latest -g
sudo npm install -g @angular/cli
Humilde Freak
fonte
2
npm install npm@latest -gpode não ser necessário
Devin
15

Usar npm install angular-cli --save-dev

Pedro Henrique
fonte
6
PS Agora está obsoleto ... angular-cli foi oficialmente movido para@angular/cli
shramee
Mesmo ele foi descontinuado corrigiu meu problema. Saúde, companheiro.
Gabriel Muñumel,
14

Execute os seguintes comandos passo a passo:

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
fonte
8

Isso é o que me ajudou quando me vi no mesmo problema:

npm uninstall -g angular-cli @angular/cli
npm cache clean --force
npm install -g @angular/cli@latest
Devman
fonte
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
fonte
5

No meu caso (Mac OS X e ambiente Angular 1.5 usado anteriormente)

npm -g cache clean --force

npm cache clean --force

funcionou. ( npm install -g @angular/cli@latestdepois)

Alex Nevidomsky
fonte
5

Funciona com npm install -g @angular/cli@latest comigo.

UmaShankar
fonte
2

Este erro ocorre quando há incompatibilidade entre a versão do nó e a versão angular / cli. portanto, use o comando abaixo para atualizar a versão CLI para a mais recente

npm install -g @ angular / cli @ mais recente

Sunali Bandara
fonte
2
npm uninstall -g angular-cli @angular/cli

npm cache clean --force

npm install -g @angular-cli/latest

Eu tentei comandos semelhantes e funcionam para mim, mas certifique-se de usá-los no prompt de comando com direitos de administrador

Onkar Nirhali
fonte
1

Eu tive o mesmo problema - descobri que eu estava usando um angular-cli obsoleto em vez de @ angular / cli. Este último foi usado pela minha equipe de desenvolvimento e demorei algum tempo para perceber que estávamos usando versões diferentes do angular-cli.

Mac Keicam
fonte
1

Eu enfrentei o mesmo problema ao executar meu projeto: descobri que se o seu projeto está usando uma versão específica de qualquer coisa em package.json, descubra isso e instale a versão específica dessas dependências como para mim, npm install @ angular / cli @ ^ 4.0.0 .

Rutvik Joshi
fonte
0

Não se esqueça de usar --force:

npm cache clean --force
Diego venâncio
fonte
0

Tive o problema semelhante e nada estava funcionando, mas segui as etapas abaixo e funcionou para mim. quando executei cmd como administrador funcionou bem para mim.

  1. Primeiro execute o Prompt de Comando como administrador.

  2. Crie o novo projeto.

Se ainda assim não criar o projeto, remova a pasta e todos os seus arquivos e execute ng new <project name>seguido por ng serve.

Se nada funcionar, desinstale o nó e todos os outros arquivos relacionados a ele e siga as etapas acima

Ayesha Sultana
fonte
0

Apenas inclua isso no package.json na seção devDependencies

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

Não é obrigatório instalá-lo se você tiver outra versão do cli instalada globalmente.

Tive esse problema quando trabalhei com o angular2 e 4 em um projeto diferente. Então angular4 - preciso angular-cli @ latest e angular2 precisa angular-cli da versão acima.

Sanjay Kumar NS
fonte
0
npm uninstall -g angular-cli 

npm install -g @angular/cli

É isso aí!

insira a descrição da imagem aqui

Bhavya Shah
fonte
1
Bem-vindo ao Stack Overflow! Adicione código e dados como texto ( usando formatação de código ), não imagens. Imagens: A) não nos permitem copiar - e - colar o código / erros / dados para teste; B) não permitir a busca com base no conteúdo do código / erro / dados; e muitos outros motivos . Em geral, código / erros / dados em formato de texto >>>> código / erros / dados como uma imagem >> nada. As imagens só devem ser utilizadas, além do texto em formato de código, se possuir a imagem agregar algo significativo que não seja veiculado apenas pelo código do texto / erro / dados.
bipe duplo de
Obrigado por me receber. Eu cuidarei disso da próxima vez.
Bhavya Shah
0

Pode ser o problema com sua versão.

npm install -g @angular/cli@latest

A execução acima funcionou para mim. Obrigado!

Jaya Sundeep
fonte