Als ik de npm-pakketten probeer te installeren met de opdracht npm i
, krijg ik de volgende uitzondering:
Ik heb geprobeerd het node js-pakket opnieuw te installeren en de proxy uit te zetten met:
set HTTP_PROXY=
set HTTPS_PROXY=
Het probleem is er nog steeds. Wat doe ik verkeerd?
Bijwerken:
Als ik de volgende opdracht uitvoer:
npm install --legacy-peer-deps
De volgende fout wordt weergegeven:
Antwoord 1, autoriteit 100%
Dit is niet gerelateerd aan http-proxy.
Je hebt een afhankelijkheidsconflict(onjuisteen mogelijk gebrokenafhankelijkheid) zoals er staat, dus probeer de opdracht uit te voeren met --force
, of --legacy-peer-deps
. Als het niet van kracht wordt, gebruikt de tijdelijke oplossingeerdere versies van het knooppunt(de versie van het knooppunt downgraden), omdat dit soms dit soort fouten veroorzaakt.
Update gebaseerd op OP’s Update:
Zoals je ziet, wordt de volgende fout geactiveerd:
Geen overeenkomende versie gevonden voor @angular/http@^9.1.4.
Bekijk angular/http
pagina . Opmerking dat de nieuwste versie voor die verouderde pakket 7.2.16
terwijl u een bovenste versie aanvraagt (bijv. ^9.1.4
) ! Probeer dus de projectafhankelijkheid te controleren en de verhoogde fouten te volgen om het probleem op te lossen.
2, Autoriteit 44%
Probeer deze opdracht –
npm install --save --legacy-peer-deps
3, Autoriteit 19%
Naast het gebruik van de --legacy-peer-deps
Opdrachtregeloptie, kan dit ook meer permanent als een config-optie worden ingesteld:
npm config set legacy-peer-deps true
4, Autoriteit 12%
Dit gebeurt voor sommige pakketten na het updaten naar NPM 7.
Pamper --legacy-peer-deps
Kan helpen:
npm i --legacy-peer-deps
Hier beschreven Legacy-peer-deps
Oorzaken NPM om peerdependencies volledig te negeren bij het bouwen van een
Pakketboom, zoals in NPM-versies 3 tot en met 6.Als een pakket niet kan worden geïnstalleerd vanwege overdreven streng
Peerdependencies die botsen, biedt het een manier om vooruit te gaan
het oplossen van de situatie.
…
U kunt deze optie instellen op true
Standaard (niet aanbevolen door NPM):
npm config set legacy-peer-deps true
of wacht gewoon totdat deze pakketten op de hoogte zijn.
5, Autoriteit 2%
Ik hoop dat mijn bericht u kan helpen, eerst probeerde ik
npm install
Het gaf me fout unable to resolve dependency tree
niet oplossen op de Help-informatie van deze opdracht
Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
Ik heb deze opdracht geprobeerd
npm install --legacy-peer-deps
En het loste mijn probleem op
Antwoord 6, autoriteit 2%
De snelste oplossing: npm install --legacy-peer-deps
Verklaart:
In npm-versies 3 tot en met 6 werden peerDependencies niet automatisch geïnstalleerd en zou er een waarschuwing verschijnen als er een ongeldige versie van de peer-afhankelijkheid in de structuur werd gevonden. Vanaf npm v7 zijn peerDependencies standaard geïnstalleerd.
Je afhankelijkheid bevat enkele peerDependencies die in strijd zijn met de afhankelijkheid van het rootproject.
Zoals beschreven in het npm ERR
-logboek.
Antwoord 7
Het probleem lijkt te zijn dat gf-kautomata-pipeline-ui
Angular 9 gebruikt, terwijl @angular/http
Angular 7 vereist (@angular/http
is verouderd en uiteindelijk verwijderd, en alle functionaliteit is in plaats daarvan verplaatst naar @angular/common
.)
Zie: https://www.npmjs.com/package/@angular/http
Als je Angular 9 gebruikt, dan
-
verwijder
@angular/http
uit jepackage.json
(je hebt het niet nodig in Angular 9) -
Zorg ervoor dat u
@angular/common
in uwpackage.json
heeft staan. -
Voer
npm i
uit.
Als je Angular 7 gebruikt, open dan je package.json en controleer of al je Angular-pakketten niet hoger zijn dan ^7.0.0. Mogelijk moet u ook gf-kautomata-pipeline-ui verwijderen of contact opnemen met de auteur van gf-kautomata-pipeline-ui om te zien of de bibliotheek compatibel is met Angular 7.
Antwoord 8
in mijn geval kreeg ik de foutmelding (hieronder) na het upgraden van npm
van versie 6 naar 7.
npm ERR! code ERESOLVE npm ERR! ERESOLVE kan afhankelijkheid niet oplossen
boom…
npm ERR! Los het upstream-afhankelijkheidsconflict op of probeer deze opdracht opnieuw met –force of –legacy-peer-deps om een onjuiste (en mogelijk verbroken) afhankelijkheidsoplossing te accepteren.
In mijn geval resulteerde het compileren met --legacy-peer-deps
of --force
vlaggen in een nutteloze bundel.
Dus ik heb geprobeerd de node_modules
, package-lock.json
te verwijderen en te bundelen met behulp van yarn install
. Dit genereerde een garen.lock-bestand en creëerde package-lock.json dat prima werkte in volgende npm-runs.
ps. Ik gebruik de tijdelijke oplossing totdat npm
7 goed werkt met mijn project: daarna zal ik garen.lock, package-lock.json en node_modules verwijderen en opnieuw compileren met npm
rm -rf node_modules
rm package-lock.json
yarn install
# generates a yarn.lock file and a new package-lock.json
# continue with npm
npm start
Antwoord 9
Eerst om het probleem te begrijpen. Dit is wat ik als fout heb:
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving: [email protected]
npm ERR! Found: @angular/[email protected]
npm ERR! node_modules/@angular/common
npm ERR! @angular/common@"11.0.3" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer @angular/common@"^9.1.0 || ^10.0.0" from @agm/[email protected]
npm ERR! node_modules/@agm/core
npm ERR! @agm/core@"3.0.0-beta.0" from the root project
Eerst moet u het probleem van onder naar boven lezen. Hier vereist @agm/[email protected] hoekgemeenschappelijke 9.1.0 of 10.0.0. En het bovenste bericht zegt dat de gevonden hoekige common eigenlijk 11.0.3 is.
(Als je afhankelijkheden iets beter wilt begrijpen, is hier een heel eenvoudige site https://npm.github.io/how-npm-works-docs/npm3/how-npm3-works.html)
dependencies — these are the essential dependencies that you rely on and call in your project’s code
devDependencies — these are your development dependencies, for example, a prettier library for formatting code
peerDependencies — if you set a peer dependency in your package.json, you are telling the person who installs your package that they need that dependency with the specified version
optionalDependencies — these dependencies are optional and failing to install them will not break the installation process
bundledDependencies — it’s an array of packages that will come bundled with your package. This is useful when some 3rd party library is not on NPM, or you want to include some of your projects as modules
Dus wat moet dan de oplossing zijn? Het probleem gaat over peer-afhankelijkheden. De oplossing is om hoekige gemeenschappelijke of de oplossing te downgraden, is om Legacy-afhankelijkheden Logica te gebruiken voor het installeren van pakketten met – heldere peer-deps. Dus welke – begeleidende peer-depp is niet om de peerdependencies automatisch te installeren. Werkt dit voor jou? Waarschijnlijk wel. Maar u moet specifieke instructie plaatsen hoe dat te doen, of om het gebruik van – gracht-peer-deps automatisch te maken voor toekomstige installatie van de projectpakketten met deze code van een van de bovenstaande antwoorden:
npm config set legacy-peer-deps true
In mijn geval heb ik het pakket geïnstalleerd en ik probeerde NG-serveer te draaien, maar omdat – groei-peer-deps werd gebruikt, waren er afhankelijkheidspakketten die niet waren geïnstalleerd. Ik moest die handmatig installeren (omdat ik de config de hierboven niet heb ingesteld). Aan het einde installeren ongeveer 5 pakketten handmatig, allemaal met – beginner-peer-deps, ik eindigde met een pakket dat niet kon worden geïnstalleerd en ik probeerde niet door te gaan, omdat mijn project waarschuwingen gooide als een gek en er waren veel van pakketten voor audit ook. Dus mijn beslissing was niet om dit pakket te gebruiken en om alternatief te vinden.
Andere oplossingen die ik over de weg heb gelezen:
- Downgraded Node naar V14, dit zal NPM downgraden. Misschien niet V14, maar dit was de versie die het meest wordt gedowngraded naar.
- Sommige mensen gebruiken garen om de installatie van het pakket te forceren – persoonlijk begrijp ik niet hoe dit werkt, omdat ik geen garen heb gebruikt.
- Downgrading Angular and the Global Angular CLI-versie naar versie die aan de eis zal voldoen. In mijn geval is het hoekig / gemeenschappelijk, en in de vraag is het hoekig / kern, maar beide vereisen het hele hoekig naar rechts (niet zeker van dit hier).
- Het pakket dat u installeert, kan een hogere versie hebben die geen downgrading hoekig vereist. Misschien probeer je de https://updatepackagejson.com/ om je pakketten naar het nieuwste te upgraden, maar dit is In het geval dat uw project vrij nieuw is.
10
In mijn geval had ik problemen met @ Babel / Core afhankelijkheid, maar wilde niet --force
gebruiken omdat ik niet zeker was van de gevolgen, Dus ging ik naar https://www.npmjs.com/ , zocht naar het pakket en vervangte mijn oude versie met de nieuwste. Dat deed het werk
11
Ik werk gewoon mijn knooppunt en het werkt voor mij:
$ node -v
V xxxx
$ sudo npm install -g n
(Gebruik deze opdracht om de release van het stabiele knooppunt te installeren.)
$ sudo n stable
Ik hoop dat het ook werkt voor jou !!!
12
Hier is de oplossing.
Naar de projectdirectory
sudo rm ./package-lock.json
sudo npm install --force
13
- Als u
node_modules
map enpackage-lock.json
bestand in uw root-map verwijderen, verwijder dan die:
rm -r node_modules
rm package-lock.json
- Voer vervolgens opdrachten uit:
npm install --save --legacy-peer-deps
npm audit fix --force
- Maak
.env
bestand in de hoofdmap en plak onderstaande code:
SKIP_PREFLIGHT_CHECK=true
- Start nu uw project:
npm start
Antwoord 14
Geen van de bovenstaande antwoorden heeft me geholpen.
voor mij heeft het updaten van npm naar de nieuwste versie (naar 7.11.1 van 7.8) met behulp van npm i -g npm
het probleem voor mij opgelost.
Antwoord 15
Het resetten van package-lock.json
werkt altijd goed voor mij:
git checkout -- package-lock.json
Details:
Ik heb dit vaak ondervonden bij het updaten van alle pakketten van het oude project – ik raad het gebruik van npm audit fix
of npm i --force
ten zeerste af. Het verwijderen van de package-lock.json
werkte ook niet altijd voor mij. Terugdraaien naar de werkende versie van package.json + package-lock.json
en pakketten toevoegen bleek voor mij de veiligste en snelste variant te zijn.
Antwoord 16
Ik heb dit opgelost door de versie van Node te verlagen van de laatste versie naar de LTS-versie
Antwoord 17
Voor het geval dat ik soortgelijk gedrag vertoonde toen ik ofwel npm upgrade
mijn huidige op Angular 11.x gebaseerde boilerplate van vorige ng new
probeerde of een nieuwe ng new abc
gebaseerd op Angular 12.x. Ik ben gewoon vergeten Angular CLI te upgraden. Dus deze npm install -g @angular/cli@latest
loste mijn fouten op tijdens ng new abc
.
Antwoord 18
Voor degenen die fouten krijgen tijdens het installeren van Bootstrap Paginator of table next
npm install react-bootstrap-table2-paginator --save
of
npm install react-bootstrap-table-next --save
Oplossing:
Voeg --legacy-peer-deps
toe na het commando zoals
npm install react-bootstrap-table2-paginator --save --legacy-peer-deps
npm install react-bootstrap-table-next --save --legacy-peer-deps
Antwoord 19
Ik heb dit probleem vaak ondervonden, eindelijk heb ik een oplossing gevonden
npm install react-native-paper --legacy-peer-deps
Antwoord 20
Zelfs na het verwijderen/installeren van NPM en CLI als het nog steeds niet werkt, zorg er dan voor dat u zich in de projectmap bevindt. U hebt bijvoorbeeld een hoofdmap “mijntoepassing” gemaakt. Nu voert u de CLI-opdracht uit om een geheel nieuwe toepassing te maken onder de map myapplication. Na het uitvoeren van de opdracht krijgt u een foutmelding zoals “ERESOLVE kan de afhankelijkheidsboom niet oplossen“. Dus, in plaats van het commando uit te voeren in de myapplication-map, ga naar de nieuwe applicatiemap in de myapplication-map en voer de hoekige applicatie uit / voer deze uit. Het zou goed werken.
Antwoord 21
Het probleem houdt verband met een afhankelijkheidsconflict of verbroken afhankelijkheid. U kunt doorgaan door de onjuiste afhankelijkheid te accepteren door de installatie te forceren.
Oplossing:Commando gebruiken met --force
.
Uw commando zal zijn als npm install --force @your-npm-package
.
Opmerking:u kunt yarn
gebruiken om afhankelijkheid te installeren als deze beschikbaar is om te installeren met garenpakketbeheerder.
Antwoord 22
npm audit fix --force
Werkte voor mij
Antwoord 23
Doe gewoon een simpel ding:
npm install --save --legacy-peer-deps
Antwoord 24
Eindelijk gevonden oplossing
- nvm installeren
- gebruik nvm om node te installeren
- voer cmd in om de lts-versie te gebruiken
- nadat mijn installatie werkte, zou het ook voor jou moeten werken.
Antwoord 25
1.Afhankelijkheid toevoegen in package.json
2. npm installeren
Zie je de fout nog steeds?
- npm install –force
Antwoord 26
Ik had hetzelfde probleem
npm install --legacy-peer-deps
Dit werkt ook voor de mijne. Maar ik heb een eenvoudiger antwoord. Wijzig gewoon het versienummer van in package.json dat vereist is. Gebruik dan
npm i
Dit lost uw probleem op (Genereer zoals gewoonlijk een nieuw project, zonder een mogelijk verbroken afhankelijkheidsprobleem.)
Antwoord 27
Begin eerst met de vlag npm i --legacy-peer-deps
en gebruik daarna de vlag --force
.