【问题标题】:NPM start error - file path cannot find JSON package fileNPM 启动错误 - 文件路径找不到 JSON 包文件
【发布时间】:2019-12-24 15:39:23
【问题描述】:

第一次发帖,先谢谢大家帮忙!

我正在尝试完成我的第一个项目,但遇到了一些问题。主要的是,当我点击 npm start 时,我会收到此错误消息 -

我尝试在运行 npm install 之前点击它,但无济于事。有没有人有什么想法?!

谢谢!

【问题讨论】:

  • 您是否在C:\Users\Joshu\OneDrive\Documents\Coding\jamming 中创建了package.json 文件?如果没有,您应该创建一个package.json
  • @Yousername 说了什么,你能更新你的问题以显示C:\Users\Joshu\OneDrive\Documents\Coding\jamming 的文件夹结构吗?
  • 我相信你第一次启动项目时应该输入的命令是npm init而不是npm start
  • 嘿@AleksandarMisich,我在帖子中添加了附加图像,以显示我在执行 npm init / npm start 后遇到的新错误以及显示文件夹结构的图片。再次感谢您的帮助!
  • 可以发一下你的内容吗package.json

标签: javascript json npm


【解决方案1】:

如果没有 package.json 的内容,我只能猜测......正如一些 cmets 也指出了我们的那样,请确保您的 nodenpm 命令可以导航到/查看您的脚本文件


上下文:

但是这里有两个概念。 node & npm

1.节点是一个运行时:

为了运行节点脚本,您需要node 命令(在您正在处理的项目的上下文中,因此请确保您的 cli 位于项目的根目录中),如下所示:

node ./folder/to/your-script.js

2。 NPM 是一个包管理器。

...它依赖于在与您运行npm 命令的目录相同的目录中拥有package.json,而不是init(它会为您创建package.json 文件) )


问题:

第二张截图是这里的线索。

您尝试运行npm start,错误消息是:

缺少脚本:开始

这意味着您的 scripts 块不包含 start 属性

因此,在我看来,您好像在混合这两个概念。

  1. 如果您想在没有package.json 的情况下运行脚本,您可以使用node <filename.js> 命令
  2. 如果你有依赖,并且想让你的生活多一点 如果您有很多其他命令和依赖项,则很方便,您 可以使用npm run <script> 命令。

(旁注:npm start 是 似乎可以运行或没有run 的特殊情况 关键字,直到我现在才测试它才知道:P)


解决方案:

因此,为了更接近您的期望,我们可以修改package.json,如下所示:

您还可以为 scripts 块内(package.json 内)的命令创建自定义别名:

 "scripts": {
   "start": "node ./some-path/to/your-script.js"
   "bar": "npm run foo",
   "foo": "node ./folder/to/your-script.js"
 }

您会注意到,您也可以在其他脚本命令中引用同级脚本别名(您也可以在此处添加非节点命令,如git 等)

因此,在您的package.json 中使用上述内容,当您在与package.json 相同的目录中运行npm 时,您将可以访问以下命令。

npm startnpm run foonpm run bar

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-15
    • 2015-08-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多