Webpack – webpack-dev-server: opdracht niet gevonden

Ik werk aan een React-webapp met webpack, losjes naast deze handleiding.

Per ongeluk heb ik de map node_modules aan mijn git toegevoegd. Ik heb het vervolgens weer verwijderd met behulp van git rm -f node_modules/*.

Als ik nu de webpack-server probeer te starten, krijg ik de volgende foutmelding:

> webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors
sh: webpack-dev-server: command not found
npm ERR! Darwin 14.4.0
npm ERR! argv "node" "/usr/local/bin/npm" "run" "devserve"
npm ERR! node v0.12.4
npm ERR! npm  v2.10.1
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! [email protected] devserve: `webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors`
npm ERR! spawn ENOENT

Eerst dacht ik dat het alleen mijn project was, maar toen heb ik de codecontrolepunten van de tutorial bekeken: dezelfde fout! Er lijkt dus wereldwijd iets mis te zijn.

Dit is wat ik tot nu toe heb geprobeerd:

  • rm node_modulesen installeer opnieuw met npm install
  • npm cache cleanzoals iemand zei over dit probleem op github
  • installeer webpack globaal met npm install -g webpack
  • verwijder node en npm volledig van mijn systeem (met behulp van deze handleiding) en installeer opnieuw met brew

De foutmelding blijft bestaan. Wat kan ik nog meer proberen?

PS: De inhoud van webpack.dev.config.jsis:

var config = require('./webpack.config.js');
var webpack = require('webpack');
config.plugins.push(
  new webpack.DefinePlugin({
    "process.env": {
      "NODE_ENV": JSON.stringify("development")
    }
  })
);
module.exports = config;

Antwoord 1, autoriteit 100%

Ok, het was makkelijk:

npm install webpack-dev-server -g

Wat me in de war bracht dat ik dat eerst niet nodig had, waarschijnlijk zijn de dingen veranderd met een nieuwe versie.


Antwoord 2, autoriteit 21%

Ter info, om toegang te krijgen tot elk script via de opdrachtregel, zoals u probeerde, u
moet het script geregistreerd zijn als een shell-script (of enige vorm van)
script zoals .js, .rb
)
in het systeem zoals deze bestanden in de dir
/usr/binin UNIX. En het systeem moet weten waar het ze kan vinden. d.w.z.
de locatie moet worden geladen in de $PATHarray.


In jouw geval is het script webpack-dev-serveral ergens in de ./node_modulesdirectory geïnstalleerd, maar het systeem weet niet hoe het er toegang toe moet krijgen. Dus om toegang te krijgen tot het commando webpack-dev-server, moet je het script ook in global scopeinstalleren.

$ npm install webpack-dev-server -g

Hier verwijst -gnaar globale reikwijdte.


Dit is echter niet aan te raden, omdat u te maken kunt krijgen met versieconflicten; dus in plaats daarvan kun je een commando in npm‘s package.jsonbestand instellen zoals:

 "scripts": {
    "start": "webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors"
   }

Deze instelling geeft u toegang tot het gewenste script met een eenvoudige opdracht

$ npm start

of

$ yarn start

Zo kort om te onthouden en te spelen. En npmkent de locatie van de module webpack-dev-server.


Antwoord 3, autoriteit 8%

Het script webpack-dev-serveris al geïnstalleerd in de map ./node_modules.
U kunt het opnieuw globaal installeren door

sudo npm install -g webpack-dev-server

of voer het zo uit

./node_modules/webpack-dev-server/bin/webpack-dev-server.js -d --config webpack.dev.config.js --content-base public/ --progress --colors

.betekent zoek het in de huidige map.


Antwoord 4, autoriteit 6%

Garen

Ik had het probleem bij het uitvoeren van: yarn start

Het is opgelost door eerst te draaien: yarn install


Antwoord 5, autoriteit 3%

Ik had hetzelfde probleem, maar de onderstaande stappen hebben me geholpen om eruit te komen.

  1. De ‘webpack-dev-server’ lokaal installeren (in de projectdirectory omdat deze niet uit de algemene installatie koos)

    npm install –save webpack-dev-server

Kan controleren of de map ‘webpack-dev-server’ bestaat in node_modules.

  1. Hardlopen met npx om direct te rennen

npx webpack-dev-server --mode development --config ./webpack.dev.js

npm run startwerkt ook prima waar je invoer in package.json-scripts zoals hierboven zou moeten zijn, zoals zonder npx.


Antwoord 6

Ik heb geconstateerd dat het geaccepteerde antwoord niet in alle scenario’s werkt. Om ervoor te zorgen dat het 100% werkt, moet men OOK de npm-cache wissen. Ofwel direct Ga naar de cache en verwijder sloten, caches, anonieme-cli-metrics.json; of men kan npm cache cleanproberen.

Aangezien de auteur de cache had gewist voordat hij de aanbevolen oplossing probeerde, is het mogelijk dat deze niet tot een van de vereisten heeft gemaakt.


Antwoord 7

Voor globale installatie:
npm install webpack-dev-server -g

Voor lokale installatie
npm install –save-dev webpack

Als u naar het webpack verwijst in het bestand package.json, probeert het het te zoeken in de locatie node_modules\.bin\

Na lokale installatie wordt het bestand wbpack aangemaakt op locatie:
\node_modules\.bin\webpack


Antwoord 8

Ik merkte hetzelfde probleem op na het installeren van VSCode en het toevoegen van een externe Git-repository. Op de een of andere manier werd de map /node_modules/.binverwijderd en werd npm install --save webpack-dev-serverin de opdrachtregel uitgevoerd, de ontbrekende map opnieuw geïnstalleerd en mijn probleem opgelost .


Antwoord 9

Ik installeer met npm install --save-dev webpack-dev-serveren vervolgens stel ik package.json en webpack.config.js als volgt in:
instelling.

Vervolgens voer ik webpack-dev-server uit en krijg deze foutmelding
fout.

Als ik npm install -g webpack-dev-serverniet gebruik om te installeren, hoe kan ik dit dan oplossen?

Ik heb de fout configuration has an unknown property 'colors'verholpen door colors:truete verwijderen. Het is gelukt!


Antwoord 10

Ik had een soortgelijk probleem met Yarn, geen van bovenstaande werkte voor mij, dus ik heb gewoon ./node_modulesverwijderd en yarn installuitgevoerd en probleem verdwenen.


Antwoord 11

npm install webpack-dev-server -g — windows OS

Het is beter om sudo in linux te gebruiken om toestemmingsfouten te voorkomen

sudo npm install webpack-dev-server -g

U kunt sudo npm install webpack-dev-server –save gebruiken om het toe te voegen aan package.json.

Soms moet u de onderstaande opdrachten uitvoeren.

npm install webpack-cli –save of npm install webpack-cli -g

Other episodes