angular-cli - not - your global angular cli version 1.6 6 is greater than your local version
Versión de CLI angular global mayor que la versión local (10)
Así es como resolví el problema.
Copia y ejecuta estos comandos
ng --version
npm install --save-dev @angular/cli@latest
ng --version
Cuando ejecuto
ng serve
, recibo esta advertencia acerca de que mi versión de CLI global es mayor que mi versión local.
No noto ningún problema con esta advertencia, pero me preguntaba si las dos versiones deberían estar sincronizadas.
Además, ¿es necesario tener una versión local si tiene una versión global?
La advertencia:
Su versión global de CLI angular (1.1.1) es mayor que su versión local (1.0.6). Se utiliza la versión local de CLI angular.
Ejecute el siguiente comando:
npm install --save-dev @angular/cli@latest
Después de ejecutar el comando anterior, la consola puede mostrar el siguiente mensaje
El formato de configuración de CLI angular ha cambiado, y su configuración existente se puede actualizar automáticamente ejecutando el siguiente comando: ng update @ angular / cli
En mi caso, acabo de usar este comando en el proyecto:
ng update @angular/cli
Esto funciona para mí: actualizará la versión local a la última
npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
npm install
para verificar la versión
ng --version
No soy fluido en Inglés
pero si entiendo el problema, ¿es que localmente en el proyecto tiene una versión anterior de CLI que globalmente?
¿Y le gustaría utilizar este global más nuevo en lugar del local más antiguo?
Si es así, un método muy simple es suficiente para ejecutarse en el directorio del proyecto
npm link @angular/cli
más en el tema de la página: https://docs.npmjs.com/cli/link
Para responder una de las preguntas, es necesario tener una instalación global y local para que las herramientas funcionen.
Si intenta ejecutar
ng serve
en una aplicación sin la instalación local de la CLI (solo instalación global), obtendrá el siguiente error.
Debe estar dentro de un proyecto de CLI angular para utilizar el comando de servicio.
También imprimirá este mensaje:
Please take the following steps to avoid issues:
"npm install --save-dev @angular/cli@latest"
Ejecute ese comando
npm
para actualizar la CLI localmente y evite la advertencia que está recibiendo.
Otra pregunta: Parece que no tienen que estar sincronizados, pero probablemente es mejor que lo estén para evitar cualquier comportamiento inusual con la herramienta, o cualquier inconsistencia con el código que genera la herramienta.
¿Por qué necesitamos tanto la instalación global como una instalación local?
La instalación global es necesaria para iniciar una nueva aplicación.
El comando
ng new <app-name>
se ejecuta utilizando la instalación global de la CLI.
De hecho, si intenta ejecutar
ng new
mientras está dentro de la estructura de carpetas de una aplicación CLI existente, obtendrá este error encantador:
No puede usar el
new
comando dentro de un proyecto CLI angular.
Otros comandos que se pueden ejecutar desde la instalación global son
ng help
,
ng get/set
con la opción
--global
,
ng version
,
ng doc
y
ng completion
.
La instalación local de la CLI se usa después de que se haya creado una aplicación.
De esta manera, cuando hay nuevas versiones de la CLI disponibles, puede actualizar su instalación global y no afectar la instalación local.
Esto es bueno para la estabilidad de un proyecto.
La mayoría de los comandos
ng
solo tienen sentido con la versión local, como
lint
,
build
and
serve
, etc.
Según el archivo readme CLI GitHub, para actualizar la CLI debe actualizar el paquete global y local. Sin embargo, he usado la CLI donde las versiones global y local varían sin ningún problema hasta ahora. Si alguna vez me encuentro con un error relacionado con tener las versiones de CLI global y local fuera de sincronización, lo publicaré aquí.
Primero descubra la versión global angular-cli ejecutando
ng --version
El código anterior mostrará qué versión son las versiones global y local angular-cli.
Si desea que el cli angular global y local sea el mismo, simplemente puede hacer
npm install --save-dev @angular/[email protected]
donde 1.7.4 es su versión global angular-cli
Luego, si ejecuta
ng serve --open
su código.
npm install --save-dev @ angular-devkit / build-angular - ayudó a ng update @ angular / cli -> creó angular.json y otras actualizaciones.
Recopilando dependencias instaladas ... Encontradas 58 dependencias.
** Executing migrations for package ''@angular/cli'' **
Updating karma configuration
Updating configuration
Removing old config file (.angular-cli.json)
Writing config file (angular.json)
Some configuration options have been changed, please make sure to update any npm scripts which you may have modified. DELETE .angular-cli.json CREATE angular.json (4394 bytes) CREATE browserslist (429 bytes) UPDATE karma.conf.js (993 bytes) UPDATE public/tsconfig.spec.json (295 bytes) UPDATE package.json (2618 bytes) UPDATE tsconfig.json (437 bytes) UPDATE tslint.json (3135 bytes) UPDATE public/polyfills.ts (587 bytes) UPDATE public/tsconfig.app.json (199 bytes) npm WARN @angular/[email protected] requires a peer of zone.js@^0.8.4 but none is installed. You must install peer dependencies yourself.
npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
Su configuración existente se puede actualizar automáticamente ejecutando el siguiente comando:
ng update @angular/cli
o:
npm install
npm uninstall -g @angular/cli
npm cache verify
npm install -g @angular/cli@latest
Luego, en su paquete de proyecto local:
rm -rf node_modules dist
npm install --save-dev @angular/cli@latest
npm i
ng update @angular/cli
ng update @angular/core
npm install --save-dev @angular-devkit/build-angular
Se estaba obteniendo el error siguiente Error: Fin inesperado de la entrada JSON Fin inesperado de la entrada JSON Los pasos anteriores ayudados desde esta publicación no se pueden actualizar angular a la versión 6