web-dev-qa-db-fra.com

Le paquet "@ angular/compiler-cli" n'a pas été installé correctement

Mise à niveau de mon projet vers Angular 4.0 (depuis 2.4) avec Angular CLI 1.0 (depuis beta.31), le message d'erreur ci-dessous s'affiche après avoir suivi le guide de migration :

> ng build --prod

The "@angular/compiler-cli" package was not properly installed.
Error: The "@angular/compiler-cli" package was not properly installed.
    at Object.<anonymous> (/home/jan/src/fm-repos/fm-ui/node_modules/@ngtools/webpack/src/index.js:14:11)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (module.js:498:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/home/jan/src/fm-repos/fm-ui/node_modules/@angular/cli/tasks/eject.js:10:19)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (module.js:498:17)
    at require (internal/module.js:20:19)

Mes dépendances angulaires post-migration:

"@angular/animations": "^4.0.0",
"@angular/common": "^4.0.0",
"@angular/compiler": "^4.0.0",
"@angular/compiler-cli": "^4.0.0",
"@angular/core": "^4.0.0",
"@angular/forms": "^4.0.0",
"@angular/http": "^4.0.0",
"@angular/platform-browser": "^4.0.0",
"@angular/platform-browser-dynamic": "^4.0.0",
"@angular/router": "^4.0.0",
"@angular/cli": "1.0.0",
"@angular/material": "2.0.0-beta.3",

Remarque: cette question similaire concerne le projet Angular 2: le package d'erreur "2 @ angular2 de la CLI" n'a pas été correctement installé

6
Jan Nielsen

Assurez-vous que vous avez TypeScript 2.2 dans votre package.json et que votretsconfigest correctement mis à jour.

Détails :

Avec Angular CLI 1.0 installé, créez un nouveau projet factice:

ng new dummy

puis supprimez les répertoires node_modules:

rm -rf ./dummy/node_modules
rm -rf ./myproject/node_modules

et diff les changements entre le projet dummy et votre projet:

diff -bur ./dummy/ ./myproject/

Parmi les nombreux changements, le changement crucial nécessaire pour remédier à cette erreur pour moi était celui de TypeScript et les changements tsconfig:

package.json:

"TypeScript": "~2.0.3" ==> "TypeScript": "~2.2.0"

.angular-cli.json

Changement:

"tsconfig": "tsconfig.json"

à:

"tsconfig": "tsconfig.app.json",
"testTsconfig": "tsconfig.spec.json",

et ajoutez ces nouveaux fichiers à partir de votre projet dummy et installez vos paquets:

npm install
9
Jan Nielsen
npm uninstall -g angular-cli
rm -rf ./node_modules
rm package-lock.json
npm install --save-dev @angular/cli@latest

si l'installation de la dernière version génère toujours une erreur, vous pouvez exécuter à nouveau le processus de désinstallation et entrer manuellement la version d'angular-cli après avoir vérifié la dernière version dans le référentiel angular-cli. Mon package.json répertorié ^ 1.3.0, mais il y avait une version bêta qui vient de sortir et quand je l'ai modifié manuellement 

"@angular/cli": "^1.3.0-beta.0"    
npm i

Il s'est installé avec succès 

Pour moi, aucune des solutions ci-dessus n'a fonctionné, mais la mise à jour globale de npm et TypeScript a fonctionné.

Pour mettre à jour, exécutez ces commandes:

npm update

npm update -g TypeScript
1
Andrei Dobrin

J'ai tout essayé, et la seule chose qui a fonctionné pour moi était une installation simple npm

0
David Pina

Cela a fonctionné comme par magie 

npm installer --save-dev del

0
Chinedu Etoh

Ouvrez package.json et déplacez @angular/cli sous des dépendances telles que:

"dependencies": {
    "@angular/animations": "^4.0.0",
    "@angular/common": "^4.0.0",
    "@angular/compiler": "^4.0.0",
    "@angular/cli": "1.2.1",
    "@angular/compiler-cli": "^4.3.1",
    "@angular/core": "^4.0.0",
    "@angular/forms": "^4.0.0",
    "@angular/http": "^4.0.0",
    "@angular/platform-browser": "^4.0.0",
    "@angular/platform-browser-dynamic": "^4.0.0",
    "@angular/router": "^4.0.0",
    "core-js": "^2.4.1",
    "rxjs": "^5.1.0",
    "zone.js": "^0.8.4"
  },

Allez ensuite dans le dossier du projet dans l'invite de commande et exécutez la commande "npm install" Il va charger toutes les dépendances nécessaires.

0
user8335468

Je viens de changer "@ angular/compiler-cli": "^ 4.3.2" à partir de "@ angular/compiler-cli": "^ 4.0.0" dans devDependencies dans le fichier package.json.

Ça a fonctionné pour moi

0
Ashok Chowdary

Essayez ces étapes s'il vous plaît: Nettoyer

remove node_modules from your project
remove any angular-cli and @angular/cli references from package.json if it's there
Uninstall angular-cli and @angular/cli globally: npm uninstall -g angular-cli @angular/cli

Réinstaller

Install @angular/cli globally: npm install -g @angular/cli
Install @angular/cli in your project: npm install --save-dev @angular/cli
0
mkebri

J'ai eu le même message d'erreur sur mon Mac sous OS OS 10.12.4 lorsque je configurais Angular 2. 

J'ai également eu un problème similaire sur deux ordinateurs Windows 10 différents. Les machines Windows ont reçu une erreur qui a déclaré,

    Node_modules appears empty, you may need to run `npm install`.

Dans les deux cas, j'ai pu résoudre le problème en exécutant npm install dans le répertoire du projet.

Je suis allé dans la ligne de commande/terminal et ensuite dans le répertoire où le projet a été stocké, par exemple: 

    c:\Users\myname\projectname>

Pour Windows, j'ai utilisé la commande npm install et sous Mac, j'ai utilisé Sudo npm install.

Dans les deux cas, le problème a été résolu.

0
Jim Parrillo