【问题标题】:"Npm Start" Is Not Working“Npm 启动”不起作用
【发布时间】:2018-11-07 19:13:01
【问题描述】:

我正在制作一个网站,我使用命令npm start 将它放在本地主机上。但是,在我在 Visual Studio Code Editor 上创建了两个工作区后,它突然停止工作。它只会给我一个错误。

这是错误的样子:

npm 错误!路径 C:\Users\audre\first-blog\package.json

npm 错误!代码ENOENT

npm 错误!错误号-4058

npm 错误!系统调用打开

npm 错误! enoent ENOENT:没有这样的文件或目录,打开 'C:\Users\audre\first-blog\package.json'

npm 错误! enoent 这与 npm 找不到文件有关。

npm 错误!恩恩特

npm 错误!可以在以下位置找到此运行的完整日志:

npm 错误! C:\Users\audre\AppData\Roaming\npm-cache_logs\2018-05-29T07_42_13_915Z-debug.log

我不知道那是什么意思。谁能帮我?谢谢!

编辑: 我的 package.json 文件包含以下内容:

{
  "name": "pug-starter",
  "version": "1.0.0",
  "description": "Simple pug (jade) starter [framework] enabling faster delivery of HTML & CSS projects to a private server and/or automatic deployment of GitHub pages.",
  "main": "index.js",
  "scripts": {
    "dev": "gulp dev",
    "start": "gulp dev",
    "prod": "gulp build --production",
    "deploy": "gulp build --production && gulp deploy && gulp clean:ghpages",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "//": "CUSTOM CONFIGURATION",
  "config": {
    "directory": {
      "development": "tmp",
      "production": "build",
      "ghpages": ".publish",
      "source": "src",
      "data": "_data",
      "component": "_component",
      "layout": "_layout",
      "asset": "_asset",
      "image": "image",
      "font": "font",
      "templateCollection": [
        "article",
        "product"
      ]
    },
    "render": {
      "sourceFileChange": false,
      "url": {
        "//": "this is recommended to avoid Linux/Windows capitalization issue",
        "htmlExtensionOn": false,
        "toLowercase": true
      }
    },
    "entry": {
      "cssExternal": "style**.{scss,sass}",
      "cssInline": "inline**.{scss,sass}",
      "css": {
        "inline": false,
        "external": true
      }
    }
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/marianzburlea/pug-starter.git"
  },
  "keywords": [
    "pug",
    "starter",
    "jade",
    "starter"
  ],
  "author": "Marian Zburlea",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/marianzburlea/pug-starter/issues"
  },
  "homepage": "https://github.com/marianzburlea/pug-starter#readme",
  "devDependencies": {
    "autoprefixer": "^6.7.5",
    "babel-core": "^6.26.0",
    "babel-eslint": "^8.1.2",
    "babel-plugin-add-module-exports": "^0.2.1",
    "babel-preset-env": "^1.6.1",
    "browser-sync": "^2.18.8",
    "eslint": "^3.16.1",
    "foldero": "^0.1.1",
    "gulp": "github:gulpjs/gulp#4.0",
    "gulp-cached": "^1.1.1",
    "gulp-changed": "^2.0.0",
    "gulp-changed-in-place": "^2.2.0",
    "gulp-debug": "^3.1.0",
    "gulp-gh-pages": "^0.5.4",
    "gulp-if": "^2.0.2",
    "gulp-imagemin": "^3.1.1",
    "gulp-inline-source": "^3.0.0",
    "gulp-load-plugins": "^1.5.0",
    "gulp-plumber": "^1.1.0",
    "gulp-postcss": "^6.3.0",
    "gulp-pug": "^3.2.0",
    "gulp-rename": "^1.2.2",
    "gulp-sass": "^3.1.0",
    "gulp-sourcemaps": "^2.4.1",
    "imagemin-jpegoptim": "^5.0.0",
    "imagemin-pngquant": "^5.0.0",
    "imagemin-svgo": "^5.2.0",
    "jstransformer-markdown-it": "^2.0.0",
    "merge-stream": "^1.0.1",
    "minimist": "^1.2.0"
  }
}

【问题讨论】:

  • 您的机器上是否存在文件C:\Users\audre\first-blog\package.json
  • 调试日志文件的内容是什么?
  • 我想是的。我有一个标记为“package.json”的文件,如果这就是你的意思,tbrk。

标签: npm visual-studio-code web npm-start


【解决方案1】:

当所有其他方法都失败时,完全删除/重新安装 node.js。当您在所有 node env 命令上都遇到严重错误时,这意味着 node 在某种程度上已损坏或错误。

【讨论】:

  • 好的,这对我有用。我之前应该想到的。 :) 非常感谢,@LAdams87!
  • 我以为我正在疯狂地阅读所有这些我没有使用的技术得到同样的错误!我一直试图像野火一样传播这个答案。我找到了大量适用于它的排名靠前的答案!然而,我的力量很弱。
  • 哦,好吧。我很高兴你停下来分享这个!再次感谢。
【解决方案2】:

使用会照顾环境的流程管理器。

很少有选择

永远(https://www.npmjs.com/package/forever)

这样,您可以使用forever start <mainfilename>在本地主机上启动网站

PM2 (https://www.npmjs.com/package/pm2)

这样,您可以使用 pm2 start <mainfilename> 在 localhost 上启动网站

使用流程管理器,您可以从环境规范中抽象出来,直到您需要更具体的东西。

【讨论】:

  • 嗨,哈尔瓦丹!谢谢你的回答
  • 我决定安装 Forever 程序,然后我输入了永远启动命令。但是,它给了我:bash:syntax error near unexpected token newline。我该怎么办?再次感谢您。
  • 请发布您输入的确切行以及错误的痕迹
  • 我输入的行是:forever start <first-blog> 我得到的错误是:bash: syntax error near unexpected token 'newline'
  • 哦....你不必放大括号 :) 所以你的命令是:永远开始第一个博客
【解决方案3】:

ENOENT 表示,您正在运行 npm start 命令的目录不包含 package.json 文件。

首先,确保你在正确的目录中,并且它有 package.json 文件。

另外,如果没有 package.json 文件,可以使用npm init 命令初始化。

如果不是这种情况,请随时删除 cmets 来纠正我。

【讨论】:

  • 嗨,@CaptainJackSparrow!我确实有一个 package.json 文件,它在同一个目录中。
  • 您可以尝试此命令npm i -g npm@latest 一次,然后使用您的npm start 重试。
  • 你能发布你的 package.json 的内容吗
  • 好的。但是,里面没有足够的字符。 (您知道,您可以在评论中使用的字母数量有限。)除非我更新我的帖子,否则我现在就这样做。
  • package.json 文件要多少行?这是一个很长的文件。
【解决方案4】:

如果您的机器上有多个版本的 nodejs 并且正在运行节点版本管理器 (nvm),请务必在终端中正确设置您的版本。

例如。 nvm 使用 v9.5.0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-17
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    • 2020-08-18
    • 2015-05-13
    • 2013-05-25
    相关资源
    最近更新 更多