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?
- Kuinka ratkaista moottorin 'solmu' on yhteensopimaton 'tämän' moduulivirheen kanssa?
- Mitä tehdä, jos moottorin 'solmu' ei ole yhteensopiva 'tämän' moduulin kanssa. Virhe jatkuu edelleen?
- Johtopäätös
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'
- Ratkaisu 2: Poista oletusmoottorin kentät käytöstä paketin lock.json-tiedoston avulla
- Ratkaisu 3: Päivitä Node uusimpaan versioon
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 konekirjoitusYllä 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 - moottoritYllä 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 - moottoritKäytä nyt yllä kirjoitettua syntaksia asentaaksesi ' konekirjoitus ” paketti maailmanlaajuisesti käyttöjärjestelmässä:
lanka globaali lisätä konekirjoitus -- jättää huomiotta - moottoritAlla 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 tottaYllä 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 tiedostols // 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.