Fehler beim Starten des Skripts beim Ausführen von npm start

267

Ich erhalte diesen Fehler, wenn ich versuche, meine Knotenanwendung mit dem Befehl npm start zu debuggen.

Error:

npm ERR! Windows_NT 6.3.9600 npm ERR! argv "C: \ Programme \ nodejs \\ node.exe" "C: \ Programme \ nodejs \ node_modules \ npm \ bin \ npm-cli.js" "start" npm ERR! Knoten v0.12.7 npm ERR! npm v2.11.3

npm ERR! fehlendes Skript: Start npm ERR! npm ERR! Wenn Sie Hilfe benötigen, können Sie diesen Fehler unter npm ERR melden! https://github.com/npm/npm/issues npm ERR! Bitte fügen Sie jeder Supportanfrage die folgende Datei bei: npm ERR! C: \ Users \ andrmoll.NORTHAMERICA \ Documents \ GitHub \ SVIChallenge \ npm-debug.log

Aus der Debug-Datei:

Ausführlicher Stapel Fehler: fehlendes Skript: Start

4 ausführlicher Stapel beim Ausführen (C: \ Programme \ nodejs \ node_modules \ npm \ lib \ run-script.js: 142: 19)

4 ausführlicher Stapel unter C: \ Programme \ nodejs \ node_modules \ npm \ lib \ run-script.js: 58: 5

4 ausführlicher Stapel unter C: \ Programme \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 345: 5

4 ausführlicher Stapel unter checkBinReferences_ (C: \ Programme \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 309: 45)

4 ausführlicher Stapel am Ende (C: \ Programme \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 343: 3)

4 ausführlicher Stapel zu diesem Zeitpunkt (C: \ Programme \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 113: 5)

4 ausführlicher Stapel unter C: \ Programme \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 300: 12

4 ausführlicher Stapel bei evalmachine.:334:14

4 ausführlicher Stapel unter C: \ Programme \ nodejs \ node_modules \ npm \ node_modules \ graceful-fs \ graceful-fs.js: 102: 5

4 ausführlicher Stapel bei FSReqWrap.oncomplete (evalmachine.:95:15)

Andrew Moll
quelle
4
Haben Sie ein startSkript in Ihrer package.jsonDatei definiert ?
Robbie

Antworten:

380

Es sieht so aus, als hätten Sie möglicherweise kein startSkript in Ihrer package.jsonDatei definiert oder Ihr Projekt enthält keine server.jsDatei.

Wenn sich im Stammverzeichnis Ihres Pakets eine Datei server.js befindet, gibt npm den Startbefehl standardmäßig auf node server.js aus.

https://docs.npmjs.com/misc/scripts#default-values

Sie können entweder den Namen Ihres Anwendungsskripts in ändern server.jsoder Folgendes zu Ihrem hinzufügenpackage.json

"scripts": {
    "start": "node your-script.js"
}

Oder ... Sie könnten einfach node your-script.jsdirekt laufen

Robbie
quelle
15
Ich habe Mühe zu verstehen, was ist die Notwendigkeit, startwenn Sie haben main?
Val
8
@Val mainist der Einstiegspunkt in ein Modul, wenn Sie require('your-module')es in ein anderes Projekt aufnehmen - docs.npmjs.com/files/package.json#main . scripts.startist das Skript, das bei der Eingabe von npm ausgeführt wird npm start.
Robbie
Unklar, warum npm initnicht nach Startskript gefragt wird. Oder zumindest nicht mainals Startskript verwenden.
elf
Sie müssen nichts weiter tun, sondern nur "scripts" hinzufügen: {"prestart": "npm install", "start": "http-server -a localhost -p 8000 -c-1"},
SantoshK
In meinem Fall funktioniert es gut .. "scripts": {"test": "echo \" Fehler: kein Test angegeben \ "&& exit 1", "start": "parcel index.html", "build": "parcel build --public-url. index.html "},
Udit Sharma
40

Dieser Fehler tritt auch auf, wenn Sie der Datei package.json einen zweiten "Skript" -Schlüssel hinzugefügt haben. Wenn Sie nur einen "Skript" -Schlüssel in der package.json belassen, verschwindet der Fehler.

Plamen Petkov
quelle
2
Diese Antwort ist vielleicht keine exakte Antwort, aber sie hat mir sicherlich geholfen herauszufinden, warum sie npm startnicht funktioniert hat.
Obromios
2
Dies ist eigentlich eine genaue Antwort. Wenn Ihre package.json-Datei zwei Einträge für Skripte enthält, wählt sie den zweiten aus und ignoriert alles, was Sie im ersten notiert haben. Und Sie erhalten die Fehlermeldung in der Frage.
Jeffrey Hammansson
30

In meinem Fall hat es nicht funktioniert, weil ich "scripts" zweimal verwendet habe . Nach dem Kombinieren ist es ok.

"scripts": {
  "test": "make test",
  "start": "node index.js"
}
Дмитрий Дорогонов
quelle
Ist index.js eine tatsächliche Datei? oder etwas, das wir schaffen müssen?
Tomsmithweb
@tomsmithweb, wie ich mich erinnere - es war meine vorhandene Datei.
5митрий Дорогонов
6

Bitte verwenden Sie die folgende Codezeile im Skriptobjekt, das sich in package.json befindet

"scripts": {
    "start": "webpack-dev-server --hot"
}

Für mich hat es einwandfrei funktioniert.

Strahl
quelle
1
Hat bei mir nicht funktioniert. Du benutzt immer noch $ npm run serve?
Agent Zebra
2

Überprüfen Sie, ob die Datei package.json mit der Eigenschaft "scripts" vorhanden ist oder nicht. Wenn nicht, aktualisieren Sie die Skripteigenschaft wie folgt

{
  "name": "csvjson",
  "version": "1.0.0",
  "description": "upload csv to json and insert it into MongoDB for a single colletion",
  "scripts": {
    "start": "node csvjson.js"
  },
  "dependencies": {
    "csvjson": "^4.3.4",
    "fs": "^0.0.1-security",
    "mongodb": "^2.2.31"
  },
  "devDependencies": {},
  "repository": {
    "type": "git",
    "url": "git+https://github.com/giturl.git"
  },
  "keywords": [
    "csv",
    "json",
    "mongodb",
    "nodejs",
    "collection",
    "import",
    "export"
  ],
  "author": "karthikeyan.a",
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/homepage/issues"
  },
  "homepage": "https://github.com/homepage#readme"
}
KARTHIKEYAN.A
quelle
2

Wenn Sie babelify und watchify verwenden, gehen Sie zu:

package.json

und fügen Sie dies in "Skripten" hinzu:

"scripts": {
    "start": "watchify the-path-to-your-source-jsx-file -v -t [ babelify --presets [ react ] ] -o the-path-to-your-output-js-file"
}

Ein Beispiel wäre:

"scripts": {
    "start": "watchify src/main.jsx -v -t [ babelify --presets [ react ] ] -o public/js/main.js"
}

Vielen Dank an Mark Price von DevSlopes

drjorgepolanco
quelle
2

In meinem Fall, wenn es sich um ein Reaktionsprojekt handelt, können Sie versuchen, npm zu aktualisieren und dann react-cli zu aktualisieren

npm -g install npm@version
npm install -g create-react-app
Schrei
quelle
dann erstelle-reagiere-app my_app. Danke das funktioniert
ugali soft
2

Ich hatte dieses Problem bei der ersten Installation von react-js: Diese Zeile hat mir geholfen, das Problem zu lösen:

npm rm -g create-react-app
npm install -g create-react-app
npx create-react-app my-app

Quelle: https://stackoverflow.com/a/59260128/11652661

MbeforeL
quelle
1

sollte die Verwendung einer instabilen npm-Version vermeiden.

Ich habe ein Problem festgestellt, das auf der npm-Version basiert: npm Version 4.6.1 ist stabil, aber 5.x ist instabil, da package.json beim Erstellen mit der Standardvorlage perfekt konfiguriert wird, wenn es sich um eine stabile Version handelt und so wir manuell don‘ Sie müssen diese Skripte nicht hinzufügen.

Ich habe das folgende Problem auf npm 5 bekommen, also habe ich auf npm 4.6.1 heruntergestuft, dann hat es für mich funktioniert,


FEHLER: npm 5 wird noch nicht unterstützt


Es sieht so aus, als würden Sie npm 5 verwenden, das kürzlich veröffentlicht wurde.

Create React Native App funktioniert leider noch nicht mit npm 5. Wir empfehlen die Verwendung von npm 4 oder Garn, bis einige Fehler behoben sind.

Sie können die bekannten Probleme mit npm 5 unter folgender Adresse verfolgen: https://github.com/npm/npm/issues/16991


Devas-MacBook-Air: SampleTestApp deva $ npm start npm ERR! fehlendes Skript: Start

Deva
quelle
"instabile Version"
Sv443
1

Ein weiterer möglicher Grund: Sie verwenden npm, wenn Ihr Projekt in Garn initialisiert wird. (Ich habe das selbst gemacht). So wäre es yarn startstatt npm start.

kbooth1000
quelle
1

Von der globalen Installation von create-react-app wird jetzt abgeraten. Deinstallieren Sie stattdessen das global installierte Paket create-react-app wie folgt: npm uninstall -g create-react-app (Sie müssen möglicherweise den Paketordner manuell löschen, wenn dieser Befehl für Sie nicht funktioniert hat. Einige Benutzer haben gemeldet, dass sie Ordner löschen müssen manuell)

Dann können Sie npx create-react-app my-app ausführen, um die React-App erneut zu erstellen.

Ref: https://github.com/facebook/create-react-app/issues/8086

Basilisk Wise
quelle
0

Stellen Sie sicher, dass die PORTS eingeschaltet sind

var app = express();
app.set('port', (process.env.PORT || 5000));

BLAL BLA BLA UND AM ENDE HABEN SIE DAS

app.listen(app.get('port'), function() {
    console.log("Node app is running at localhost:" + app.get('port'))
});

Immer noch ein Neuling im Knoten js, aber dies verursachte mehr davon.

Gutes Leben
quelle
0

Schauen Sie sich Ihren client / package.json an . Sie müssen diese Skripte haben

"scripts": {
  "start": "react-scripts start",
  "build": "react-scripts build",
  "test": "react-scripts test --env=jsdom",
  "eject": "react-scripts eject"
}
Sieger
quelle
0

Möglicherweise haben Sie eine alte (globale) Installation von npm, die das Problem verursacht. Ab dem 19.12. Unterstützt npm keine globalen Installationen.

Deinstallieren Sie das Paket zunächst mit:
npm uninstall -g create-react-app

Einige OSX / Linux-Benutzer müssen möglicherweise auch die alte npm entfernen, indem sie:
rm -rf /usr/local/bin/create-react-app

Dies ist jetzt die einzige unterstützte Methode zum Generieren eines Projekts:
npx create-react-app my-app

Endlich können Sie ausführen:
npm start

Ali
quelle
-1
"scripts": {
  "prestart": "npm install",
  "start": "http-server -a localhost -p 8000 -c-1"
}

Fügen Sie dieses Code-Snippet abhängig von Ihrer eigenen Konfiguration in Ihre package.json ein .

Ankita Singh
quelle
-1

Ich habe das gleiche Problem. Ich versuche, einen Code wie folgt in die Datei package.json zu schreiben

    "scripts": {
    "start": "<your-script-file>.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
Mohamed Salah
quelle
-2

Ich habe meine gelöst. Es ist kein NPM-Fehler, der mit dem Proxy-Verhalten zusammenhängt.

Wenn Sie hinter einem Proxy stehen,

MAC
 1.  Goto System Preference (gears icon on your mac)
 2.  click your network
 3.  click advanced
 4.  click proxy
 5.  check excludes simple hostnames
 6.  add this line below (Bypass Proxy Settings...) "localhost, localhost:8080"

refer to the npm echo: "Project is running at http://localhost:8080/"

Windows
 1.  Goto your browser Proxy Settings (google it)
 2.  check Bypass local address
 3.  add this line below "localhost, localhost:8080"
Eman Jayme
quelle