Errore CLI angolare: il comando serve deve essere eseguito in un progetto angolare, ma non è stata trovata una definizione di progetto


159

Quando eseguo i comandi del terminale ng servero ng serve --live-reload=true, ottengo questo problema:

Il comando serve richiede di essere eseguito in un progetto angolare, ma non è stato possibile trovare una definizione di progetto.


11
Controlla se hai cartella node_modules nella cartella del progetto, se non esegui npm install
KEMBL

ho già la cartella node_modules.
Gurpreet Singh,

Mi sono imbattuto in questa domanda quando ho avuto lo stesso messaggio di errore durante il tentativo di eseguire "ng build". La risposta per me è stata quella di eseguire "npm run build"
cfranklin

Ero nella directory principale e ho riscontrato questo errore: D. Dopo ng new projectaver dimenticato di accedere alla directory del progetto.
Davut Gürbüz

Risposte:


229

Stavo anche ricevendo questo problema e risolto correndo sotto il comando.

ng update @angular/cli --migrate-only --from=<WhateverVersionYouAreCurrentlyOn>

per esempio

ng update @angular/cli --migrate-only --from=1.7.3

ottenere il riferimento da qui https://github.com/angular/angular-cli/issues/12215#issuecomment-433593036


30
Succede perché il nuovo angular-cli dipende usa angular.json invece di .angular-cli.json come file di progetto e la tua risposta si occupa di questa conversione
Nome in codice Jack

7
Nota: La --from=1.7.4rappresenta la versione in fase di migrazione da, in modo che il 1.7.4dovrebbe essere cambiato alla versione angolare che si erano precedentemente in uso (ad esempio: 5.2.10, 6.0.0, ecc).
cjn

4
ng update @ angular / cli << questo ha funzionato per me con un progetto esistente dall'angolare 6-7
Abdullah Adeeb

2
Ero su 1.2.4 e ho avuto il seguente errore: l' The specified command update is invalid. For available options, see ``ng help``.ho risolto aggiornando angular-cli a 1.7.4 e quindi seguendo questa risposta.
ILikeFood

1
Grazie. Lavorando per me quando ho aggiornato angolare da 4.4.7 a 7
Pullat Junaid il

71

assicurati di eseguire il comando nella cartella principale dell'applicazione.


per accedere alla cartella principale utilizzare pm> dir pm> cd clientappquindi se si dispone di un messaggio di errore utilizzare quanto segue pm>ng config -g cli.warnings.versionMismatch false
hosam hemaily

44

se hai scaricato un progetto, fallo nel progetto

npm install


il mio problema era che i pacchetti npm privati ​​non erano installati
David

Lo stesso problema che ho avuto quando ho provato i progetti di test per un tutorial angolare
mahlatse,

19

Infine, il comando seguente ha risolto il problema per me!

ng update --all --force

Ho provato a ng update @angular/clinon funzionare ma ha ng update --all --forcefunzionato come previsto quale sarebbe la differenza?
k11k2,

15

Errore Cli angolare: il comando serve deve essere eseguito in un progetto angolare, ma non è stata trovata una definizione del progetto

Problema mancava file angular.json.

    ng update --all --force

Testato in Angular 7+


5

Stava accadendo nel mio progetto esistente mentre cercavo di aggiornare agli ultimi pacchetti nodee npm:

  1. Disinstalla globale: npm uninstall -g angular-cli
  2. Ripristina cache: npm cache cleano npm cache verify(per npm version> 5)
  3. Installa più recente: npm install -g @angular/cli@latest

4

Assicurati di aver impostato la nuova configurazione della versione angolare nel tuo progetto. Il nuovo cli angolare utilizza angular.json e non .angular-cli.json per la sua configurazione.

Segui la guida alla migrazione .


4

Sono stato sciocco, ma ho bisogno di lasciare un commento, forse posso salvare qualcun altro un po 'di seccatura. Lo stesso messaggio viene visualizzato se si esegue il multitasking e si hanno più progetti, quindi parte del progetto è nidificato all'interno della cartella del progetto come projectFolder/subProject/projectOnese fossi nel projectFolder/subProjecttentativo di eseguire il comando ng serve.

Assicurati di essere nella cartella corretta perché si verificherà lo stesso errore se ti trovi nella cartella sbagliata e mancano conf e build!


3

Nella console di Package Manager eseguire il comando

PM> cd NameofApp 

quindi puoi provare a eseguire il comando lì. Per esempio

PM > ng generate component Home

3

Ciò accade quando si tenta di eseguire il comando angolare "ng s" o "ng serve" sull'altra cartella anziché sulla cartella principale dell'applicazione Angular.

Aggiorna anche l'Angolare usando il seguente comando:

ng update @angular/cli --migrate-only --from=1.7.4

Questo risolverà.


3

per reinstallare nuovamente l'applicazione è molto meglio piuttosto che aggiornare o modificare alcune configurazioni che non vengono riconosciute da npm a causa della mancata configurazione o non siamo davvero sicuri di cosa sia sbagliato.

Scelgo la soluzione @Tinu è lavoro

Passaggio 1) npm install -g @ angular / cli

Step 2) del nuovo progetto mio-angolare

Passaggio 3) cd my-angular-project

Passaggio 4) di servire --open

appena fatto il backup per il nostro attuale codice sorgente e rimetterlo in un nuovo progetto angolare che verrà creato.


2

Nel mio caso, ho dimenticato di cambiare la mia directory, quindi subito dopo aver eseguito il comando:

del nuovo AngularProject

eseguire un altro comando:

cd AngularProject

e ha ng servelavorato per me.


2

Ho avuto lo stesso problema con Angular7 perché dobbiamo andare nella cartella principale prima di eseguire l'applicazione. Vai alla cartella principale della tua app ed esegui il comando. Funziona perfettamente per me.


2

Lo stesso problema che ho riscontrato, ma ho risolto seguendo questi passaggi del codice.

Step 1) npm install -g @angular/cli
Step 2) ng new my-angular-project
Step 3) cd my-angular-project
Step 4) ng serve --open

Perché dobbiamo creare un nuovo progetto? Voglio che ciò avvenga per quello esistente
Dadhich Sourav,

perché creare un nuovo progetto? Se qualcuno ha il problema nel progetto esistente
Lint

2

Questo errore si verifica quando il progetto in esecuzione non è un progetto angolare. Anche se hai scaricato un progetto angolare ma non hai installato tutte le dipendenze, ecco perché il comando ng serve non è disponibile per te.

Basta accedere al percorso in cui è archiviato il progetto e utilizzare il comando

npm install

(Nota: Node.js deve essere installato nel sistema e se si utilizza Angular 2 o superiore, è necessario installare anche il cli angolare nel sistema prima di eseguire questo comando. Per verificare se node.js è installato nel sistema 1) Apri cmd (qualsiasi percorso come nodo dovrebbe essere installato globalmente nel tuo sistema) 2) usa il comando

node -v
npm -v

per ottenere la versione nodo e npm)

Un'altra cosa importante: la versione angolare della clip non farà differenza se la versione installata nel sistema è superiore alla versione richiesta dal progetto. Fornirà un avviso ma è possibile ignorare l'avviso.


2

Questo errore può verificarsi quando ci troviamo nella directory errata, quindi utilizzare il comando cd per modificare la directory. Dal commento precedente non è molto evidente che quale comando specifico stia dando questo errore, quindi questa risposta si basa sul presupposto che stai eseguendo un servizio al di fuori della cartella radice / cartella del progetto reale. Ecco perché sta dando errore perché i comandi cli richiedono file conf e build per eseguire il cli build.

These should be the steps:
npm install -g @angular/cli  //corrected from 'angular-cli'
ng new projectname
cd projectname
ng serve
open http://localhost:4200

2

Passa alla cartella dell'app ed esegui nuovamente comando generate:

inserisci qui la descrizione dell'immagine


1

Mi sono imbattuto nello stesso errore. Il motivo è che il nuovo aggiornamento angular cli rende ridondante angular-cli.json e viene invece sostituito con angular.json. La mia precedente versione di Angular Cli è la 1.7.4, quindi per apportare la modifica, ho eseguito il comando seguente, effettuerà la conversione per te:

ng update @angular/cli --migrate-only --from=1.7.4

Opzione sconosciuta: '--target' npm ERR! codice ELIFECYCLE
Sohail

1

Ho affrontato lo stesso problema quando,

Avevo creato un nuovo progetto angolare usando la vecchia versione di angular-cli (1.4.7) Quindi ho aggiornato ang-cli usando i comandi seguenti ( NON FARE LA SOTTO PER AGGIORNARE LA CLI )

  • npm uninstall -g @angular/cli
  • npm cache clean --force
  • npm install -g @angular/cli@latest

Ora, quando ho provato ng serve, ho avuto lo stesso errore come te

Angular Cli Error: The serve command requires to be run in an Angular project, but a project definition could not be found

FARE QUI SOTTO PER AGGIORNARE LA CLI

ng update @angular/cli --migrate-only --from=1.4.7

1

Come ha detto Usman, ho avuto molti problemi la prima volta, stavo seguendo un tutorial. Non avevo impostato la mia directory sulla directory del progetto, quindi ho riscontrato questo errore.

Ho risolto il problema con

  1. Impostare la directory radice corretta su dove si trovava il mio progetto cd myproject
  2. Compila l'app - ng serve

Questo è stato.


1

Ho provato tutto quanto sopra Ma per me è stato risolto da

npm start


questo dovrebbe essere nella sezione commenti
Pardeep

@Pardeep Ho provato tutte le risposte sopra ma npm start mi ha funzionato. quindi sarà utile per l'altro sviluppatore. se viene fatta come una risposta accattivante piuttosto che rimanere nei commenti
viveksuggu,

1

Sto usando ionciv1, nel file ionic.config.jsonelimina la chiave di tipo angolare e ha funzionato correttamente

esempio:

  {
  "name": "nombre",
  "integrations": {
    "cordova": {}
  },
  "type": "angular", // delete
  "gulpStartupTasks": [
    "sass",
    "templatecache",
    "ng_annotate",
    "useref",
    "watch"
  ],
  "watchPatterns": [
    "www/**/*",
    "!www/lib/**/*"
  ],
  "browsers": [
    {
      "platform": "android",
      "browser": "crosswalk",
      "version": "12.41.296.5"
    }
  ],
  "id": "0.1"
}

risolto

     {
      "name": "nombre",
      "integrations": {
        "cordova": {}
      },
      "gulpStartupTasks": [
        "sass",
        "templatecache",
        "ng_annotate",
        "useref",
        "watch"
      ],
      "watchPatterns": [
        "www/**/*",
        "!www/lib/**/*"
      ],
      "browsers": [
        {
          "platform": "android",
          "browser": "crosswalk",
          "version": "12.41.296.5"
        }
      ],
      "id": "0.1"
    }

1

Questo errore di solito può essere ricondotto a un aggiornamento del nostro runtime CLI globale o locale. Per verificare se questo è il problema, è necessario rivedere il package.jsonfile. Lì, dovremmo cercare la dipendenza @ angular / cli . Ciò dovrebbe indicare la versione della CLI utilizzata per creare il nostro progetto. Prendiamo nota di questo valore, poiché dobbiamo usarlo per migrare il nostro progetto in un secondo momento.

Dovremmo ora confrontare l'attuale runtime della CLI immettendo il seguente comando nella finestra del terminale.

ng v

uscita di ng v

Se ricevi un errore An unhandled exception occurred: ENOENT: no such file or directory, scandir '~/your-app/node_modules', hai dimenticato di eseguirenpm install

La console dovrebbe visualizzare l'attuale versione della CLI. Se le versioni sono diverse , è necessario migrare il progetto nella nuova versione della CLI eseguendo il comando seguente. Si noti che il parametro from version dovrebbe essere impostato sul valore trovato per impostazione @ angular / cli .

ng update @angular/cli --migrate-only --from=1.6.7

Ora dovremmo dare un'occhiata al nostro progetto e notare le modifiche alla versione di dipendenza della CLI in package.json file. Inoltre, a seconda della versione della CLI, il .angular-cli.jsonfile viene eliminato e angular.jsonviene creato un nuovo file. Questo è il file di progetto che la nuova CLI sta cercando e quindi l'origine dell'errore di nessun progetto trovato. Aggiungendo questo file, dovremmo essere di nuovo in pista per eseguire nuovamente il nostro progetto.

Dovremmo essere in grado di inserire il seguente comando e il progetto dovrebbe essere caricato correttamente.

ng server

Grazie a Ozkary


1

Assicurati di aver creato l'App angolare usando il comando seguente, quindi esegui ng serve nella cartella Progetto creata.

ng new Project_Name

0

Assicurati anche che se stai eseguendo ng servi di fermarlo prima ...


0

Risolto. Stavo riscontrando lo stesso problema su Ubuntu 18.04.01 LTS . Nessuna delle opzioni precedenti ha funzionato mentre stavo usando NVM (Node Version Manager.) La soluzione è
prima di creare il progetto , usa il comando
nvm use 10
(la mia versione del nodo era 10.15.0, quindi ho usato "nvm use 10")
Mostrerà output-
Ora usando il nodo v10.15.0 (npm v6.4.1)
Le versioni varieranno secondo i singoli sistemi. quindi creare un nuovo progetto.


0

È possibile aggiornare l'angolare con il comando 'ng update --all'. Ci vorrà del tempo ma assicurati che tutti i tuoi componenti siano aggiornati.


0

Controlla se ti trovi nella cartella del tuo progetto o meno e prova il comando ng serve di nuovo

Ho avuto lo stesso errore da quando ho provato ng serve comandare al di fuori del mio progetto

Esempio: supponiamo che tu abbia un progetto con il nome "E-commerce" nella cartella e prova il comando ng serve apri il terminale cd E-commerce del servizio


0

Questo risolto il mio problema:

ng generate component nameComponent --module app.module

0

Ciò accade perché stiamo eseguendo il comando ng serve in qualche altro percorso. Questo può essere risolto premendo il comando ng serve o npm start sul percorso in cui risiede esattamente il nostro progetto (prendere il percorso fino alla cartella che contiene src, node_modules, ecc.)

F: \ project \ AngularDemo \ AngularDemoapp> ng serve

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.