Npm-pakketten bijwerken in Ubuntu 16.04
Node Package Manager, of npm, wordt samen met Node . geïnstalleerd.js en je kunt het gebruiken om softwarepakketten te importeren die bovenop Node zijn gebouwd.js.
Als u niet bekend bent met het idee van nodejs, het is gebaseerd op de JavaScript-engine van Google Chrome en kan worden gebruikt voor server-side scripting met JavaScript. Het brengt JavaScript (dat traditioneel op de client draait e.g een webbrowser) op dezelfde voet als elke andere server-side taal zoals .NET of php.
Omdat de taal al erg populair en gebruiksvriendelijk is. Er zijn nu een groot aantal applicaties gebouwd bovenop de Node.js tot het punt dat het bijna zijn eigen ecosysteem van applicaties en frameworks heeft om applicaties te bouwen, elk gebundeld als een eigen pakket. Het probleem daarmee ontstaat wanneer ontwikkelaars hun pakketten beginnen te verbeteren en een nieuwe versie uitbrengen.
Zoals de meeste pakketbeheerders installeert npm de meest recente (stabiele) release van een pakket. Dus als je een bepaalde versie van Express installeert voor je webapplicatie en een paar jaar later na een nieuwe versie van Express, is de kans groot dat er iets in je app kapot gaat op een directe of indirecte manier.
Om dit probleem te omzeilen, is het handig om npm te gebruiken op een manier die gebruik maakt van versienummers om pakketten bij te houden.
Knooppunt installeren.js en npm
Als je Node nog niet hebt.js op uw systeem is geïnstalleerd, is het een goed idee om te beginnen met de officiële LTS-release. De officiële repository van Ubuntu 16.04 loopt een beetje achter ten opzichte van de laatste stabiele release en we zouden dus de Node . toevoegen.js officiële repo als een PPA.
$curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -Het bovenstaande commando haalt een shellscript op van deb.nodesource.com en voert het uit via bash. Het script voegt automatisch de openbare sleutels van de repo toe en werkt de bronlijsten bij voor apt-pakketbeheerder.
Na deze installatie van Node.js en npm is net zo eenvoudig als hardlopen:
$apt install nodejsVoordat we beginnen met het installeren en bijwerken van verschillende pakketten, moeten we ervoor zorgen dat de versie van npm en Node.js is wat we willen dat ze zijn.
$nodejs --versie$npm --versie
De versie van npm is niet de laatste stabiele release (hoewel we ervoor hebben gezorgd dat Node.js is de LTS-versie)
Om npm zelf bij te werken, kunt u de opdracht uitvoeren:
$sudo npm install npm@latest -gWaar de vlag -g ervoor zorgt dat het pakket globaal wordt geïnstalleerd, dat wil zeggen voor alle gebruikers. Je kunt dit alleen doen als je de root-gebruiker bent of root-voorrechten van het systeem hebt. Waarna je kunt zien dat het versienummer voor npm is gewijzigd.
Als u terug wilt gaan, kunt u op dezelfde manier het vorige versienummer invoeren. Bijvoorbeeld:
$sudo npm installeer [email protected] -gLokale pakketten installeren en bijwerken
npm biedt 2 verschillende methoden voor het installeren van pakketten. De eerste is lokaal om te worden gebruikt in bijvoorbeeld een andere software die u probeert te bouwen en de tweede methode om deze te installeren is om het voor alle gebruikers over het hele systeem te doen. Dit is geweldig als u een systeemhulpprogramma probeert te installeren, bijvoorbeeld met een CLI-interface, om te gebruiken als een basisopdracht of als zelfstandige software.
De lokale pakketten zijn mapspecifiek. Als u bijvoorbeeld een Node aan het bouwen bent.js app maak eerst een projectmap of map:
$mkdir mijnapp$cd mijnapp
Nu kun je vanuit de map een npm init-opdracht uitvoeren en de juiste waarden invoeren voor de naam, beschrijving, git-repository en andere relevante velden die de metadata van het pakket zijn.
Als u nu een pakket, zoals lodash, installeert door de volgende opdracht in de map uit te voeren:
$npm installeer lodashnpm haalt automatisch de laatste stabiele release van het genoemde pakket op en installeert het voor je.
Als u het versienummer wilt controleren, voert u de opdracht in:
$npm lijst
Als er een nieuwe versie van lodash komt en je wilt upgraden, voer dan in dezelfde map het volgende uit:
$npm-update
Nu kun je zien dat het versienummer groter is dan voorheen.
Als er iets mis is met de nieuwe versie en u ondervindt problemen, dan kunt u altijd teruggaan naar de vorige staat door simpelweg te starten.
$npm installeer [email protected]Dat vereist natuurlijk het bijhouden van het vorige versienummer. Om deze reden is het raadzaam om een git-commit uit te voeren vóór een van de npm-updateacties.
Globale pakketten installeren en bijwerken
Het wereldwijd installeren van pakketten is eigenlijk veel eenvoudiger, omdat dit meestal op zichzelf staande hulpprogramma's zijn. Een goed voorbeeld van zo'n pakket is gtop, dat vergelijkbaar is met het hulpprogramma top in Linux. Het toont al het gebruik van hulpbronnen op een schone en elegante manier.
Om een pakket globaal te installeren, moet u de root-gebruiker zijn of uw opdracht prefixen met sudo als u een gebruiker bent met root-previleges.
$sudo npm installeer gtop -gNu kun je, net als elk ander commandohulpprogramma, gtop aanroepen door het volgende uit te voeren:
$gtop
Om af te sluiten drukt u eenvoudig op q en u valt terug naar de terminal. Omdat er te veel afhankelijkheden zijn voor gtop door simpelweg npm list -g uit te voeren, helpt het ons niet om de versie van gtop te kennen. Dus we kunnen dit in plaats daarvan proberen:
$npm lijst gtop -g
Als u het pakket wilt bijwerken, voert u eenvoudig het volgende uit:
$sudo npm update gtop -gEn je bent klaar!
Conclusie
Dus dat is basispakketbeheer als u npm-pakketten wilt gebruiken voor uw nieuwe softwareproject of als een zelfstandig systeemhulpprogramma. Als u npm-pakketten wilt verkennen, kunt u dit altijd doen door naar hun officiële website te gaan.