Cómo resolver el error del 'nodo' del motor es incompatible con 'este' módulo

Como Resolver El Error Del Nodo Del Motor Es Incompatible Con Este Modulo



En Node.js, el ' paquete ”contiene todos los archivos importantes de un módulo. Un módulo corresponde a una biblioteca que crea una conexión con una aplicación en función de su contexto. Todos los paquetes de Node.js no están predefinidos, la mayoría de ellos son externos que se pueden instalar en la aplicación Node.js a través del administrador de paquetes “npm/yarn”.

La instalación de paquetes externos es bastante sencilla, sin embargo, a veces el usuario puede encontrar algunos errores al realizar esta tarea. Entre estos errores, el error “El “nodo” del motor es incompatible con “Este” módulo” es uno de ellos que se puede resolver siguiendo diferentes técnicas.

Esquema rápido







Cuando el “nodo” del motor es incompatible con “este” módulo, ¿se produce un error?

El 'nodo' es incompatible con 'Este' El error del módulo se produce por los siguientes motivos:



Razón 1: el paquete requerido no es compatible

La razón más común por la que el 'nodo' es incompatible con el error del módulo 'Este' se debe a la incompatibilidad entre Node.js y la versión del paquete requerida. Se enfrenta principalmente al implementar la aplicación Node.js en AWS.



Razón 2: versión anterior del nodo

Otra razón es la versión anterior de Node.js. Se enfrenta principalmente en el sistema operativo Ubuntu cuando el usuario intenta actualizar la versión de Node.js varias veces y también actualiza los repositorios del sistema junto con ella. Por esta razón, el “ apto El comando iniciará una versión anterior de Node.js tomada del paquete Debian y el usuario enfrenta el error particular anterior.





¿Cómo resolver que el “nodo” del motor es incompatible con el error “Este” módulo?

Esta sección enumera todas las posibles soluciones viables para resolver que el 'nodo' del motor es incompatible con el error del módulo 'Este':

Solución 1: ignore la verificación del motor usando 'npm' e 'yarn'

La primera solución es “ ignorando la revisión del motor ”mientras instala el paquete especificado usando el “ npm ' o ' hilo ”administradores de paquetes. Para ' npm 'Se puede hacer usando el' -fuerza ” bandera y para “ hilo 'Esta tarea se puede realizar utilizando el botón' –ignorar-motores ' bandera.



Primero avance en el “ npm ' gerente de empaquetación.

Sintaxis (para NPM)

instalación npm -- fuerza < paquete nombre >

Según la sintaxis anterior, el ' -fuerza 'La bandera agrega el paquete especificado a la aplicación Node.js con fuerza

Ahora use la sintaxis anterior para instalar un paquete específico en la versión actual de Node.js:

instalación npm -- forzar mecanografiado

En el comando anterior, el paquete 'typescript' se instala ignorando la compatibilidad de la versión actual de Node.

El siguiente resultado muestra que el ' mecanografiado El paquete 'se ha instalado a la fuerza en la aplicación Node.js actual. También muestra un mensaje de advertencia debido al caché. Ejecute el “ verificación de caché npm ”comando para verificar si el caché funcionó correctamente o no:

Ahora ignore las comprobaciones del motor utilizando el botón ' hilo 'Administrador de paquetes con la ayuda del siguiente comando:

instalación de hilo -- ignorar - motores

El comando anterior ignora las comprobaciones del motor y confirma que el ' hilo ”no instala las dependencias opcionales. El ' –ignorar-motores 'La bandera ejecuta el comando 'yarn install' en el modo fuera de línea:

El comando anterior crea un ' hilo.lock ”archivo en el directorio principal del proyecto Node.js.

El ' hilo El administrador de paquetes requiere la siguiente sintaxis para instalar un paquete ignorando las comprobaciones del motor:

Sintaxis (para hilo)

agregar hilo < paquete nombre > -- ignorar - motores

Ahora use la sintaxis escrita anteriormente para instalar un ' mecanografiado ”paquete globalmente en un sistema operativo:

hilo global agregar mecanografiado -- ignorar - motores

El siguiente resultado agrega con éxito el proyecto mecanografiado globalmente en el sistema operativo Windows actual para todos los proyectos de Node.js:

Consejo: ignore las comprobaciones del motor para todos los comandos

Si el usuario desea ignorar la verificación del motor para todos los comandos, ejecute el siguiente comando junto con ' verdadero ”valor booleano:

conjunto de configuración de hilo ignorar - motores verdadero

El comando anterior le dice al compilador que ignore el campo del motor especificado en el archivo 'package.json':

El ' ignorar motores Las comprobaciones se han establecido en verdadero para todos los comandos. Ahora el usuario puede instalar cualquier paquete específico en Node.js sin especificar el indicador “–ignore-engines”:

Solución 2: deshabilite los campos predeterminados del motor mediante el archivo “package-lock.json”

La siguiente solución es modificar el “ motor ' campo del ' paquete-lock.json ' archivo. Para hacerlo, primero navegue hasta el directorio principal del proyecto Node.js y abra el archivo 'package-lock.json'.

Una vez abierto el archivo de destino, vaya a ' motores ”campo y actualícelo de esta manera:

Prensa ' Ctrl+S ”para guardar el archivo anterior. La modificación permite que el administrador de paquetes 'npm' instale la versión del paquete requerida que sea adecuada para la versión '>=14.17' de Node.js.

Solución 3: actualice el nodo a la última versión

Otra solución es actualizar la versión de Node.js. La actualización de Node.js en todos los sistemas operativos es bastante sencilla y se puede realizar con la ayuda de las guías que se indican a continuación:

  • ¿Cómo actualizar las versiones de nodos en Windows?
  • ¿Cómo actualizar la versión del nodo en Ubuntu?
  • ¿Cómo actualizar Node.js a la última versión en macOS?

¿Qué hacer si el “nodo” del motor es incompatible con “este” módulo? El error aún persiste.

Si el error 'motor' nodo 'es incompatible con el' este 'módulo' persiste después de resolverlo con cualquiera de las soluciones anteriores, elimine el ' módulos_nodo ”carpeta. La carpeta 'node_modules' se genera automáticamente cuando se instala un módulo de terceros. Contiene todos los paquetes de terceros de los que depende el proyecto Node.js.

Es más, el “ paquete-lock.json El archivo ”también se genera automáticamente cuando se instala un paquete con “npm”. Mantiene el registro de las dependencias y subdependencias de las que depende el paquete junto con sus versiones. Si el paquete está instalado con 'yarn', entonces este nombre de archivo es ' hilo.lock ”.

Solución: elimine la carpeta “node_modules” y el archivo “package-lock.json”

La solución al error encontrado es eliminar la carpeta 'node_modules', el archivo de configuración 'package-lock.json/yarn.lock' e instalar el paquete requerido nuevamente.

En Linux , la carpeta o los archivos especificados anteriormente se pueden eliminar con la ayuda del siguiente ' habitación (eliminar)” comando:

habitación - paquete rf node_modules - cerrar con llave. json //Eliminar carpeta y archivo

es // Mostrar archivos y directorios

En el comando anterior el ' -r 'La bandera elimina la carpeta especificada' recursivamente ”incluidos todos sus subdirectorios y el “ F 'La bandera le dice al intérprete que realice esta tarea'. con fuerza ”:

El resultado muestra que la carpeta “node_modules” y el archivo “package-lock.json/yarn.lock” se han eliminado por completo:

En ventanas , el usuario puede eliminar la carpeta 'node_modules' y el archivo 'package-lock.json/yarn.lock' simplemente presionando la tecla 'eliminar' o usando la opción 'eliminar' en el menú desplegable.

Se trata de resolver el error 'No se puede encontrar el módulo' en Node.js.

Conclusión

Para solucionar el motor” nodo” es incompatible con el módulo “Este” 'Error, ignore las comprobaciones del motor según el administrador de paquetes especificado. Para ' npm 'Se puede hacer usando el' -fuerza ” bandera, y para “ hilo ” se puede realizar a través del “ –ignorar-motores ”verifique la bandera. Además, el usuario también puede solucionar el error modificando el “ motores ” campo del “ paquete-lock.json ”archivo o actualizando la versión de Node. Esta publicación analiza todas las razones posibles junto con su solución para resolver el error 'No se puede encontrar el módulo' usando Node.js.