Moottorin 'solmun' ratkaiseminen ei ole yhteensopiva 'Tämän' moduulivirheen kanssa

Moottorin Solmun Ratkaiseminen Ei Ole Yhteensopiva Taman Moduulivirheen Kanssa



Node.js:ssa ' paketti ” sisältää kaikki moduulin tärkeät tiedostot. Moduuli vastaa kirjastoa, joka muodostaa yhteyden sovellukseen sen kontekstin perusteella. Kaikki Node.js-paketit eivät ole ennalta määritettyjä, useimmat niistä ovat ulkoisia, jotka voidaan asentaa Node.js-sovellukseen 'npm/yarn'-paketinhallinnan kautta.

Ulkoisten pakettien asentaminen on melko yksinkertaista, mutta joskus käyttäjä voi kohdata virheitä suorittaessaan tätä tehtävää. Näistä virheistä 'Moottorin 'solmu' ei ole yhteensopiva 'Tämän' moduulin kanssa -virhe on yksi niistä, jotka voidaan ratkaista eri tekniikoita noudattamalla.

Quick Outline







Kun moottorin 'solmu' ei ole yhteensopiva 'Tämä' moduulivirheen kanssa?

'Solmu' ei ole yhteensopiva 'Tämä'-moduulin kanssa. Virhe ilmenee seuraavista syistä:



Syy 1: Vaadittu paketti ei ole yhteensopiva

Yleisin syy, miksi 'solmu' on yhteensopimaton 'Tämä' -moduulivirheen kanssa, johtuu Node.js:n ja vaaditun pakettiversion välisestä yhteensopimattomuudesta. Se on enimmäkseen kohdattava, kun Node.js-sovellus otetaan käyttöön AWS:ssä.



Syy 2: Vanhempi solmuversio

Toinen syy on Node.js:n vanhempi versio. Useimmiten se kohtaa Ubuntu-käyttöjärjestelmässä, kun käyttäjä yrittää päivittää Node.js-version useita kertoja ja päivittää sen mukana myös järjestelmän arkistot. Tästä syystä ' apt ” -komento käynnistää vanhemman Node.js-version, joka on otettu Debian-paketista, ja käyttäjä kohtaa yllä olevan erityisen virheen.





Kuinka ratkaista moottorin 'solmu' on yhteensopimaton 'tämän' moduulivirheen kanssa?

Tässä osiossa luetellaan kaikki mahdolliset toimivat ratkaisut moottorin 'solmu' ei ole yhteensopiva 'Tämä' moduulivirheen kanssa:

Ratkaisu 1: Ohita moottorin tarkistus käyttämällä 'npm' ja 'lanka'

Ensimmäinen ratkaisu on ' moottorin tarkastuksen huomioimatta ' kun asennat määritettyä pakettia käyttämällä ' npm ' tai ' lanka ”pakettien ylläpitäjät. ' npm 'se voidaan tehdä käyttämällä' -pakottaa ' lippu ja ' lanka ' tämä tehtävä voidaan suorittaa käyttämällä ' – jättää huomioimatta moottorit ”lippu.



Ensimmäinen askel eteenpäin npm ' paketinhallinta.

Syntaksi (NPM:lle)

npm asennus -- pakottaa < paketti nimi >

Yllä olevan syntaksin mukaan ' -pakottaa ” -lippu lisää määritetyn paketin Node.js-sovellukseen voimakkaasti

Käytä nyt yllä olevaa syntaksia asentaaksesi tietyn paketin nykyiseen Node.js-versioon:

npm asennus -- voima konekirjoitus

Yllä olevassa komennossa 'typescript'-paketti asennetaan ohittaen nykyisen Node-version yhteensopivuuden.

Alla oleva tulos osoittaa, että ' konekirjoitus ”-paketti on asennettu väkisin nykyiseen Node.js-sovellukseen. Se näyttää myös välimuistista johtuvan varoitusviestin. Suorita ' npm välimuistin tarkistus ” -komento tarkistaaksesi, toimiko välimuisti oikein vai ei:

Ohita nyt moottorin tarkistukset käyttämällä ' lanka ' paketinhallinta alla olevan komennon avulla:

langan asennus -- jättää huomiotta - moottorit

Yllä oleva komento jättää huomioimatta moottorin tarkistukset ja vahvistaa, että ' lanka ” ei asenna valinnaisia ​​riippuvuuksia. ' – jättää huomioimatta moottorit ' -lippu suorittaa 'yarn install' -komennon offline-tilassa:

Yllä oleva komento luo ' lanka.lukko ”-tiedosto Node.js-projektin päähakemistossa.

' lanka ' paketinhallinta vaatii seuraavan syntaksin asentaakseen paketin, joka jättää huomioimatta moottorin tarkistukset:

Syntaksi (langalle)

lanka lisää < paketti nimi > -- jättää huomiotta - moottorit

Käytä nyt yllä kirjoitettua syntaksia asentaaksesi ' konekirjoitus ” paketti maailmanlaajuisesti käyttöjärjestelmässä:

lanka globaali lisätä konekirjoitus -- jättää huomiotta - moottorit

Alla oleva tulos lisää konekirjoitusprojektin maailmanlaajuisesti nykyiseen Windows-käyttöjärjestelmään kaikille Node.js-projekteille:

Vinkki: Ohita kaikkien komentojen moottorin tarkistukset

Jos käyttäjä haluaa jättää huomioimatta kaikkien komentojen moottorin tarkistamisen, suorita alla oleva komento yhdessä ' totta ” Boolen arvo:

yarn config set ignore - moottorit totta

Yllä oleva komento kertoo kääntäjälle, joka jättää huomioimatta 'package.json'-tiedostossa määritetyn moottorikentän:

' jättää huomioimatta moottorit ” -tarkistukset on asetettu tosiksi kaikille komennoille. Nyt käyttäjä voi asentaa minkä tahansa tietyn paketin Node.js:ään määrittämättä '–ignore-engines' -lippua:

Ratkaisu 2: Poista oletusmoottorin kentät käytöstä paketin lock.json-tiedoston avulla

Seuraava ratkaisu on muuttaa ' moottori kenttään ' package-lock.json ”tiedosto. Voit tehdä tämän siirtymällä ensin Node.js-projektin päähakemistoon ja avaamalla 'package-lock.json'-tiedoston.

Kun kohdetiedosto on avattu, siirry kohtaan ' moottorit ”-kenttään ja päivitä se näin:

Lehdistö ' Ctrl+S ' tallentaaksesi yllä olevan tiedoston. Muokkaus antaa npm-paketinhallintaohjelman asentaa vaaditun paketin version, joka sopii Node.js-versiolle '>=14.17'.

Ratkaisu 3: Päivitä Node uusimpaan versioon

Toinen ratkaisu on päivittää Node.js-versio. Node.js:n päivittäminen kaikissa käyttöjärjestelmissä on melko helppoa ja se voidaan suorittaa alla olevien ohjeiden avulla:

  • Kuinka päivittää solmuversiot Windowsissa?
  • Kuinka päivittää Node-versio Ubuntussa?
  • Kuinka päivittää Node.js uusimpaan versioon macOS:ssä?

Mitä tehdä, jos moottorin 'solmu' ei ole yhteensopiva 'tämän' moduulin kanssa. Virhe jatkuu edelleen?

Jos 'moottorin 'solmu' ei ole yhteensopiva 'Tämä' moduulin kanssa' -virhe jatkuu sen jälkeen, kun se on ratkaistu jollakin yllä olevista ratkaisuista, poista ' solmu_moduulit ”-kansioon. Node_modules -kansio luodaan automaattisesti, kun kolmannen osapuolen moduuli asennetaan. Se sisältää kaikki kolmannen osapuolen paketit, joista Node.js-projekti on riippuvainen.

Lisäksi ' package-lock.json '-tiedosto luo myös automaattisesti, kun paketti asennetaan 'npm' kanssa. Se pitää kirjaa riippuvuuksista sekä aliriippuvuuksista, joista paketti on riippuvainen, sekä niiden versiot. Jos paketti on asennettu 'langalla', tämä tiedostonimi on ' lanka.lukko ”.

Ratkaisu: Poista 'node_modules'-kansio ja 'package-lock.json'-tiedosto

Ratkaisu havaittuun virheeseen on poistaa 'node_modules' -kansio, määritystiedosto 'package-lock.json/yarn.lock' ja asentaa tarvittava paketti uudelleen.

Linuxissa , yllämainittu kansio tai tiedostot voidaan poistaa alla olevan ' rm (poista)' komento:

rm - rf node_modules -paketti - Lukko. json //Poista kansio ja tiedosto

ls // Näytä tiedostot ja hakemistot

Yllä olevassa komennossa ' -r ' lippu poistaa määritetyn kansion ' rekursiivisesti ' mukaan lukien kaikki sen alihakemistot ja ' f ' lippu käskee tulkkia suorittamaan tämän tehtävän ' väkisin ”:

Tulos näyttää, että 'node_modules'-kansio ja 'package-lock.json/yarn.lock'-tiedosto on poistettu kokonaan:

Windowsissa , käyttäjä voi poistaa 'node_modules'-kansion ja 'package-lock.json/yarn.lock'-tiedoston yksinkertaisesti painamalla 'delete'-näppäintä tai käyttämällä 'delete'-vaihtoehtoa avattavasta valikosta.

Siinä kaikki Node.js:n 'Moduulia ei löydy' -virheen ratkaisemisesta.

Johtopäätös

Moottorin ratkaisemiseksi ' node” ei ole yhteensopiva ”Tämä”-moduulin kanssa ” -virhe, ohita moottorin tarkistukset määritetyn paketinhallinnan mukaisesti. ' npm 'se voidaan tehdä käyttämällä' -pakottaa ' lippu ja ' lanka 'se voidaan suorittaa '' – jättää huomioimatta moottorit ”tarkistuslippu. Lisäksi käyttäjä voi myös ratkaista virheen muuttamalla ' moottorit '-kentän '' package-lock.json ”-tiedostoa tai päivittää Node-versio. Tässä viestissä on käsitelty kaikkia mahdollisia syitä sekä niiden ratkaisua 'Moduulia ei löydy' -virheen ratkaisemiseksi Node.js:n avulla.