Npm start çalıştırırken script eksik hatası


267

Npm start komutunu kullanarak düğüm uygulamamda hata ayıklamaya çalışırken bu hatayı alıyorum.

Hata:

npm ERR! Windows_NT 6.3.9600 npm ERR! argv "C: \ Program Files \ nodejs \\ node.exe" "C: \ Program Files \ nodejs \ node_modules \ npm \ bin \ npm-cli.js" "başlat" npm ERR! düğüm v0.12.7 npm ERR! npm v2.11.3

npm ERR! eksik komut dosyası: start npm ERR! npm ERR! Yardıma ihtiyacınız olursa, şu hatayı bildirebilirsiniz: npm ERR! https://github.com/npm/npm/issues npm ERR! Lütfen destek talebinde bulunan şu dosyayı ekleyin: npm ERR! C: \ Kullanıcılar \ andrmoll.NORTHAMERICA \ Belgeler \ GitHub \ SVIChallenge \ npm-debug.log

Hata ayıklama dosyasından:

ayrıntılı yığın Hata: eksik komut dosyası: başlangıç

Çalışırken 4 ayrıntılı yığın (C: \ Program Files \ nodejs \ node_modules \ npm \ lib \ run-script.js: 142: 19)

C: \ Program Files \ nodejs \ node_modules \ npm \ lib \ run-script.js'de 4 ayrıntılı yığın: 58: 5

C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js'de: 4 ayrıntılı bilgi yığını: 345: 5

CheckBinReferences_ adresindeki 4 ayrıntılı yığın (C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 309: 45)

Sonunda 4 ayrıntılı yığın (C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 343: 3)

O zaman 4 ayrıntılı yığın (C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js: 113: 5)

C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ read-package-json \ read-json.js'de 4 ayrıntılı yığın: 300: 12

Değerlendirmede 4 ayrıntılı yığın: 334:14

C: \ Program Files \ nodejs \ node_modules \ npm \ node_modules \ graceful-fs \ graceful-fs.js: 102: 5 'de 4 ayrıntılı yığın

FSReqWrap.oncomplete'da 4 ayrıntılı yığın (evalmachine.:95:15)


4
startdosyanızda tanımlı bir komut package.jsondosyanız var mı?
Robbie

Yanıtlar:


381

Dosyanızda bir startkomut dosyası tanımlamamış olabilirsiniz package.jsonveya projeniz bir server.jsdosya içermiyor gibi görünüyor .

Paketinizin kökünde bir server.js dosyası varsa, npm varsayılan olarak server.js düğümü için start komutunu kullanır.

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

Uygulama komut dosyanızın adını server.jsşu şekilde değiştirebilirsiniz:package.json

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

Veya ... node your-script.jsdoğrudan koşabilirsin


15
Anlamak için uğraşıyorum, sahip olduğunuz startzaman neye ihtiyaç var main?
Val

8
@Val main, require('your-module')başka bir projeye dahil etmek için kullandığınızda bir modüle giriş noktasıdır - docs.npmjs.com/files/package.json#main . scripts.startyazarken npm tarafından çalıştırılacak komut dosyasıdır npm start.
Robbie

npm initBaşlangıç ​​komut dosyası hakkında neden sormadığı belli değil. Ya da en azından mainbir başlangıç ​​komut dosyası olarak kullanmaz .
11

Başka bir şey yapmanıza gerek yok sadece "script" ekleyin: {"prestart": "npm install", "start": "http-server -a localhost -p 8000 -c-1"},
SantoshK

Benim durumumda iyi çalışıyor .. "scriptler": {"test": "echo \" Hata: hiçbir test belirtilmedi \ "&& çıkış 1", "start": "parsel index.html", "build": "parsel build --public-url. index.html "},
Udit Sharma

41

Bu hata, package.json dosyasına ikinci bir "komut dosyası" anahtarı eklerseniz de oluşur. Package.json içinde sadece bir "script" anahtarı bırakırsanız hata kaybolur.


2
Bu cevap kesin bir yanıt olmayabilir, ancak neden npm startişe yaramadığını bulmama kesinlikle yardımcı oldu .
16'da Obromios

2
Bu aslında kesin bir yanıttır. Package.json dosyanız komut dosyaları için iki giriş içeriyorsa, ikincisini seçer ve ilkinde not ettiğiniz şeyi yoksayar. Ve sorudaki hata mesajını alacaksınız.
JeffreyHammansson


6

Lütfen package.json içinde bulunan script nesnesinde aşağıdaki kod satırını kullanın

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

Benim için gayet iyi çalıştı.


1
Benim için çalışmadı. Hala $ npm run servemı kullanıyorsun ?
Ajan Zebra

2

"script" özelliğine sahip package.json dosyasını kontrol edin ya da bulunmayın. böyle bir script özelliğini güncellemezse

{
  "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"
}

2

Babelify ve watchify kullanıyorsanız, şu adrese gidin:

package.json

ve bunu "komut dosyalarına" ekleyin:

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

Örnek olarak şunlar verilebilir:

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

DevSlopes'ten Mark Price'a teşekkürler


2

Benim durumumda, bir reaksiyon projesi ise, npm'yi yükseltmeyi ve sonra tepki tepkisini yükseltmeyi deneyebilirsiniz.

npm -g install npm@version
npm install -g create-react-app

sonra oluştur-tepki-uygulaması my_app. Teşekkürler bu çalışıyor
ugali yumuşak


1

kararsız npm sürümünü kullanmaktan kaçınmalıdır.

Npm sürüm tabanlı bir sorun olan bir şey gözlemledim, npm sürüm 4.6.1 kararlı olanı ancak 5.x kararsız çünkü paket.json kararlı bir sürüm ise varsayılan şablonla oluştururken mükemmel bir şekilde yapılandırılacak ve bu yüzden manuel olarak ' Bu komut dosyalarını eklemeniz gerekmez.

Ben npm 5 aşağıdaki sorunu var bu yüzden npm 4.6.1 için düşürdüm sonra benim için çalıştı,


HATA: npm 5 henüz desteklenmiyor


Son zamanlarda piyasaya sürülen npm 5'i kullandığınız anlaşılıyor.

Create React Native App ne yazık ki henüz npm 5 ile çalışmıyor. Bazı hatalar giderilene kadar npm 4 veya iplik kullanmanızı öneririz.

Npm 5 ile ilgili bilinen sorunları şu adreste takip edebilirsiniz: https://github.com/npm/npm/issues/16991


Devas-MacBook-Air: SampleTestApp deva $ npm başlangıç ​​npm ERR! eksik komut dosyası: başlat


"kararsız sürüm"
Sv443

1

Bir başka olası neden: projeniz iplikle başlatıldığında npm kullanıyorsunuz. (Bunu kendim yaptım). Yani bunun yarn startyerine olurdu npm start.


1

Oluşturma-tepki-uygulamasının global olarak yüklenmesi artık önerilmemektedir. Bunun yerine, şu şekilde yükleyerek global olarak yüklenmiş create-tepki-uygulama paketini kaldırın: npm uninstall -g create-tepki-uygulama (bu komut işe yaramadıysa paket klasörünü el ile silmeniz gerekebilir. Bazı kullanıcılar klasörleri silmek zorunda kaldıklarını bildirmişlerdir manuel)

Sonra tekrar reaksiyon uygulaması oluşturmak için npx create-tepki-uygulama my-app çalıştırabilirsiniz.

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


0

LİMANLARIN AÇIK OLDUĞUNDAN EMİN OLUN

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

BLAL BLA BLA VE SONUNDA BUNUN VAR

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

Düğüm js hala bir newbee ama bu daha fazla neden oldu.


0

Müşterinize / package.json'a bir göz atın . Bu komut dosyalarına sahip olmalısınız

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

0

Soruna neden olan eski (global) bir npm yüklemeniz olabilir. 12/19 itibariyle npm global kurulumları desteklemez.

İlk olarak, paketi kullanarak şunları kaldırın:
npm uninstall -g create-react-app

Bazı osx / Linux kullanıcılarının eski npm'i kullanarak şunları kaldırmaları gerekebilir:
rm -rf /usr/local/bin/create-react-app

Bu, şimdi bir proje oluşturmak için desteklenen tek yöntemdir:
npx create-react-app my-app

Sonunda çalıştırabilirsiniz:
npm start


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

Bu kod snippet'ini kendi yapılandırmanıza bağlı olarak package.json dosyasına ekleyin.


-1

Bende aynı sorun var. Package.json dosyasına aşağıdaki gibi bir kod yazmaya çalışıyorum

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

-2

Benimkini çözdüm. Onun bir NPM hatası değil proxy davranışı ile ilgili.

Proxy'nin arkasındaysanız,

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"
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.