So beheben Sie den Fehler „Engine „Knoten“ ist mit „Diesem“ Modul nicht kompatibel“.

So Beheben Sie Den Fehler Engine Knoten Ist Mit Diesem Modul Nicht Kompatibel



In Node.js ist das „ Paket „enthält alle wichtigen Dateien eines Moduls. Ein Modul entspricht einer Bibliothek, die basierend auf ihrem Kontext eine Verbindung mit einer Anwendung aufbaut. Alle Node.js-Pakete sind nicht vordefiniert, die meisten davon sind externe Pakete, die über den Paketmanager „npm/yarn“ in der Node.js-Anwendung installiert werden können.

Die Installation der externen Pakete ist recht einfach, allerdings kann es bei der Ausführung dieser Aufgabe manchmal zu Fehlern kommen. Unter diesen Fehlern ist der Fehler „Engine „Knoten“ ist mit „Diesem“ Modul inkompatibel“ einer, der durch die Befolgung verschiedener Techniken behoben werden kann.

Kurzer Überblick





Wenn der Engine-„Knoten“ mit „diesem“ Modul nicht kompatibel ist, tritt ein Fehler auf?

Der „Knoten“ ist mit „Diesem“ nicht kompatibel. Der Modulfehler tritt aus folgenden Gründen auf:



Grund 1: Erforderliches Paket ist nicht kompatibel

Der häufigste Grund für den Fehler „Knoten ist inkompatibel mit „Diesem“ Modul“ liegt in der Inkompatibilität zwischen Node.js und der erforderlichen Paketversion. Dies tritt vor allem bei der Bereitstellung der Node.js-Anwendung in AWS auf.



Grund 2: Ältere Knotenversion

Ein weiterer Grund ist die ältere Version von Node.js. Dies tritt vor allem im Ubuntu-Betriebssystem auf, wenn der Benutzer mehrmals versucht, die Node.js-Version zu aktualisieren und gleichzeitig auch die System-Repositorys aktualisiert. Aus diesem Grund ist die „ geeignet Der Befehl startet eine ältere Node.js-Version aus dem Debian-Paket und der Benutzer wird mit dem oben genannten Fehler konfrontiert.





Wie kann der Fehler „Engine „Knoten“ ist mit „Diesem“ Modul nicht kompatibel“ behoben werden?

In diesem Abschnitt werden alle möglichen praktikablen Lösungen aufgeführt, um den Fehler „Engine „Knoten“ ist nicht mit „Diesem“ Modul kompatibel“ zu beheben:

Lösung 1: Ignorieren Sie den Motorcheck mit „npm“ und „yarn“

Die erste Lösung ist „ Ignorieren der Motorprüfung ” während der Installation des angegebenen Pakets mit dem Befehl „ npm ' oder ' Garn ” Paketmanager. Für ' npm ” Dies kann mit der Funktion „ -Gewalt ” Flagge und für „ Garn ” Diese Aufgabe kann mit der Funktion „ ausgeführt werden. –ignore-engines ' Flagge.



Erster Schritt zum „ npm ' Paket-Manager.

Syntax (für NPM)

npm installieren -- Gewalt < Paket Name >

Gemäß der obigen Syntax ist das „ -Gewalt Das Flag fügt das angegebene Paket zwangsweise zur Node.js-Anwendung hinzu

Verwenden Sie nun die obige Syntax, um ein bestimmtes Paket in der aktuellen Node.js-Version zu installieren:

npm installieren -- Typoskript erzwingen

Im obigen Befehl wird das Paket „typescript“ installiert, wobei die aktuelle Node-Versionskompatibilität ignoriert wird.

Die folgende Ausgabe zeigt, dass „ Typoskript Das Paket wurde zwangsweise in der aktuellen Node.js-Anwendung installiert. Außerdem wird aufgrund des Caches eine Warnmeldung angezeigt. Führen Sie „ NPM-Cache-Überprüfung ”-Befehl, um zu überprüfen, ob der Cache ordnungsgemäß funktioniert hat oder nicht:

Ignorieren Sie nun die Motorprüfungen mit dem „ Garn ” Paketmanager mit Hilfe des unten angegebenen Befehls:

Garn installieren -- ignorieren - Motoren

Der obige Befehl ignoriert die Engine-Prüfungen und bestätigt, dass „ Garn ” installiert die optionalen Abhängigkeiten nicht. Der ' –ignore-engines Das Flag „yarn install“ führt den Befehl „yarn install“ im Offline-Modus aus:

Der obige Befehl erstellt ein „ Garn.lock ”-Datei im Hauptverzeichnis des Node.js-Projekts.

Der ' Garn Der Paketmanager erfordert die folgende Syntax, um ein Paket zu installieren und dabei die Engine-Prüfungen zu ignorieren:

Syntax (Für Garn)

Garn hinzufügen < Paket Name > -- ignorieren - Motoren

Verwenden Sie nun die oben beschriebene Syntax, um ein „ Typoskript ” Paket global in einem Betriebssystem:

Garn global Typoskript hinzufügen -- ignorieren - Motoren

Mit der folgenden Ausgabe wird das Typescript-Projekt erfolgreich global im aktuellen Windows-Betriebssystem für alle Node.js-Projekte hinzugefügt:

Tipp: Engine-Prüfungen für alle Befehle ignorieren

Wenn der Benutzer die Engine-Prüfung für alle Befehle ignorieren möchte, führen Sie den unten aufgeführten Befehl zusammen mit dem Befehl „ aus. WAHR ” boolescher Wert:

Garnkonfigurationssatz ignorieren - Motoren WAHR

Der obige Befehl weist den Compiler an, das in der Datei „package.json“ angegebene Engine-Feld zu ignorieren:

Der ' Ignoriere-Motoren „Prüfungen wurden für alle Befehle auf „true“ gesetzt. Jetzt kann der Benutzer jedes bestimmte Paket in Node.js installieren, ohne das Flag „–ignore-engines“ anzugeben:

Lösung 2: Deaktivieren Sie die Standard-Engine-Felder mithilfe der Datei „package-lock.json“.

Die nächste Lösung besteht darin, die „ Motor ”-Feld aus dem „ package-lock.json ' Datei. Navigieren Sie dazu zunächst in das Hauptverzeichnis des Node.js-Projekts und öffnen Sie die Datei „package-lock.json“.

Sobald die Zieldatei geöffnet ist, wechseln Sie zu „ Motoren ”-Feld und aktualisieren Sie es auf diese Weise:

Drücken Sie ' Strg+S ”, um die obige Datei zu speichern. Durch die Änderung kann der Paketmanager „npm“ die erforderliche Paketversion installieren, die für die Node.js-Version „>=14.17“ geeignet ist.

Lösung 3: Knoten auf die neueste Version aktualisieren

Eine andere Lösung besteht darin, die Node.js-Version zu aktualisieren. Die Aktualisierung von Node.js auf allen Betriebssystemen ist recht einfach und kann mithilfe der unten aufgeführten Anleitungen durchgeführt werden:

  • Wie aktualisiere ich Knotenversionen unter Windows?
  • Wie aktualisiere ich die Knotenversion unter Ubuntu?
  • Wie aktualisiere ich Node.js auf die neueste Version unter macOS?

Was ist zu tun, wenn der Engine-„Knoten“ mit „diesem“ Modul nicht kompatibel ist? Der Fehler bleibt weiterhin bestehen?

Wenn der Fehler „Engine „Knoten“ ist nicht mit dem „Dieses“ Modul kompatibel“ weiterhin besteht, nachdem er mit einer der oben genannten Lösungen behoben wurde, löschen Sie den „ node_modules ' Ordner. Der Ordner „node_modules“ wird automatisch generiert, wenn ein Modul eines Drittanbieters installiert wird. Es enthält alle Pakete von Drittanbietern, von denen das Node.js-Projekt abhängt.

Darüber hinaus ist die „ package-lock.json Die Datei wird auch automatisch generiert, wenn ein Paket mit „npm“ installiert wird. Es zeichnet die Abhängigkeiten und Unterabhängigkeiten auf, von denen das Paket abhängt, sowie deren Versionen. Wenn das Paket mit „yarn“ installiert wird, lautet dieser Dateiname „ Garn.lock “.

Lösung: Entfernen Sie den Ordner „node_modules“ und die Datei „package-lock.json“.

Die Lösung für den aufgetretenen Fehler besteht darin, den Ordner „node_modules“ und die Konfigurationsdatei „package-lock.json/yarn.lock“ zu löschen und das erforderliche Paket erneut zu installieren.

Unter Linux , der oben angegebene Ordner oder die oben angegebenen Dateien können mit Hilfe der unten angegebenen „ rm (entfernen)“ Befehl:

rm - rf node_modules-Paket - sperren. json //Ordner und Datei löschen

ls // Datei und Verzeichnisse anzeigen

Im obigen Befehl lautet „ -R „Flag löscht den angegebenen Ordner“ rekursiv ” einschließlich aller seiner Unterverzeichnisse und der „ F „Flag weist den Interpreter an, diese Aufgabe auszuführen“ mit Nachdruck ”:

Die Ausgabe zeigt, dass der Ordner „node_modules“ und die Datei „package-lock.json/yarn.lock“ vollständig entfernt wurden:

Unter Windows , kann der Benutzer den Ordner „node_modules“ und die Datei „package-lock.json/yarn.lock“ löschen, indem er einfach die Taste „Löschen“ drückt oder die Option „Löschen“ aus dem Dropdown-Menü verwendet.

Dabei geht es darum, den Fehler „Modul kann nicht gefunden werden“ in Node.js zu beheben.

Abschluss

Um den Motor zu beheben „ node“ ist mit dem Modul „This“ nicht kompatibel ”Fehler, ignorieren Sie die Engine-Prüfungen gemäß dem angegebenen Paketmanager. Für ' npm ” Dies kann mit der Funktion „ -Gewalt ” Flagge und für „ Garn „Es kann durchgeführt werden durch „ –ignore-engines ”Check-Flag. Darüber hinaus kann der Benutzer den Fehler auch beheben, indem er „ Motoren ” Feld des „ package-lock.json ”-Datei oder ein Upgrade der Node-Version. In diesem Beitrag wurden alle möglichen Gründe sowie die Lösung zur Behebung des Fehlers „Modul kann nicht gefunden“ mit Node.js besprochen.