Comment éviter l'erreur CLI : The serve command requires to be run in an Angular project ?

Le framework Angular est un framework open source conçu et maintenu par les équipes de Google. Il a reçu de nombreuses mises à jour au cours de son existence, avec parfois des changements importants. Le message d'erreur "CLI : The serve command requires to be run in an Angular project" est dû à une de ces mises à jour.

Le projet Angular est divisé en 2 parties : le framework pour créer les applications et le client qui permet de gérer le framework et de lancer les projets. Depuis la version 1.7.4, le client Angular a eu une modification qui marque une rupture dans la gestion des projets Angular. Auparavant, le fichier de configuration d'un projet Angular se nommait "angular-cli.json". Ce n'est plus le cas désormais, car le fichier "angular-cli.json" a une autre fonction. Le fichier de configuration se nomme désormais "angular.json". Si vous essayez de lancer un projet avec la commande "ng serve" sans avoir migré le fichier de configuration, vous obtiendrez alors ce message d'erreur.

Pour résoudre ce problème, le client d'Angular possède une commande qui permet de migrer les projets vers la version du client. La commande "ng update" prend en paramètre "@angular/cli" pour indiquer que la mise à jour concerne le client. Elle possède également une option "--migrate-only" qui permet d'effectuer une migration. Avec l'option "--from", vous pouvez indiquer la version du client que vous aviez avant d'effectuer la mise à jour. Les projets seront alors migrés vers la version installée du client Angular et pourront fonctionner correctement.

//Commande pour migrer un projet depuis la version 1.7.3
ng update @angular/cli --migrate-only --from=1.7.3

AngularJS