命令npm后启动“缺少脚本:启动”错误

时间:2018-04-09 08:40:24

标签: node.js npm node-modules

当我输入 npm start 后,会出现以下错误;

npm ERR! Linux 4.4.0-109-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "start"
npm ERR! node v4.2.6
npm ERR! npm  v3.5.2

npm ERR! missing script: start
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

以下package.json在另一台服务器上工作。我尝试将我的nodejs应用程序部署到另一台服务器。我成功安装了nodejs和npm。

注意:安装npm后,my project文件夹下没有node_modules文件夹。

我的package.json文件就像;

{
  "name": "myapplication",
  "version": "1.0.0",
  "description": "myapplication",
  "main": "index.js",
  "scripts": {
    "test": "mocha",
    "dev": "pm2 start ecosystem.config.js",
    "pro": "pm2 start ecosystem.config.js --env production"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "apn": "2.1.5",
    "async": "2.5.0",
    "body-parser": "1.17.2",
    "bootstrap": "3.3.7",
    "callback2promise": "1.0.3",
    "cookie-parser": "1.4.3",
    "express": "4.15.4",
    "express-session": "1.15.5",
    "geolib": "2.0.23",
    "image-type": "3.0.0",
    "jsonwebtoken": "7.4.3",
    "jimp": "0.2.28",
    "mkdirp": "0.5.1",
    "mongoose": "4.11.9",
    "morgan": "1.8.2",
    "multer": "1.3.0",
    "node-gcm": "0.14.6",
    "nodemailer": "4.1.0",
    "shortid": "2.2.8",
    "socket.io": "2.0.3",
    "socket.io-redis": "5.2.0",
    "twitter": "1.7.1",
    "underscore-node": "0.1.2",
    "bcrypt": "1.0.3" 
  },
  "devDependencies": {
    "eslint": "4.5.0"
  }
}

4 个答案:

答案 0 :(得分:1)

要下载并安装node_modules/文件夹中的所有模块,您需要使用install而不是start。由于start未预定义npm,因此如果要使用注释,则需要为其定义自定义脚本。

所以install是下载和安装所有模块的默认命令,具体取决于您package.json

$ npm install

答案 1 :(得分:1)

只需使用以下命令在系统上全局重新安装create-react-app软件包,它便会正常工作。

npm install -g create-react-app

然后使用以下命令创建react应用

create-react-app <your app name>

然后转到您的应用目录并运行“ npm start”命令。

答案 2 :(得分:0)

在脚本字典中将“测试”更改为“开始”,如下:

  {
    "name": "myapplication",
    "version": "1.0.0",
    "description": "myapplication",
    "main": "index.js",
    "scripts": {
    "**start**": "mocha",
    "dev": "pm2 start ecosystem.config.js",
    "pro": "pm2 start ecosystem.config.js --env production"
  },
  "author": "",
  "license": "ISC",
  "dependencies": 
  {
    "apn": "2.1.5",
    "async": "2.5.0",
    "body-parser": "1.17.2",
    "bootstrap": "3.3.7",
    "callback2promise": "1.0.3",
    "cookie-parser": "1.4.3",
    "express": "4.15.4",
    "express-session": "1.15.5",
    "geolib": "2.0.23",
    "image-type": "3.0.0",
    "jsonwebtoken": "7.4.3",
    "jimp": "0.2.28",
    "mkdirp": "0.5.1",
    "mongoose": "4.11.9",
    "morgan": "1.8.2",
    "multer": "1.3.0",
    "node-gcm": "0.14.6",
    "nodemailer": "4.1.0",
    "shortid": "2.2.8",
    "socket.io": "2.0.3",
    "socket.io-redis": "5.2.0",
    "twitter": "1.7.1",
    "underscore-node": "0.1.2",
    "bcrypt": "1.0.3" 
  },
  "devDependencies": 
  {
    "eslint": "4.5.0"
  }
}

这是对我有用的合适解决方案。我用

"scripts": 
{
     .
     .

    "**start**": "webpack-dev-server --open",

     .
     .
}

当我使用“ webpack”作为加载程序时。

答案 3 :(得分:-1)

在package.json文件中添加启动脚本

{
  "version": "1.0.0",
  "description": "No description",
  "main": "index.js",
  "scripts": {
    ...
    "start": "node index.js"
    ...
  },
  "license": "Unlicense",
  "private": true,
  "dependencies": {
  },
  "devDependencies": {
  }
}