节点使用 package.json 文件吗?

Posted

技术标签:

【中文标题】节点使用 package.json 文件吗?【英文标题】:is package.json file used by node? 【发布时间】:2014-02-07 01:36:03 【问题描述】:

package.json 文件是在应用启动时由 node 使用还是仅由 npm 用于安装依赖项?

我真正需要知道的是:当我使用启动应用程序时

节点我的应用程序

package.json 文件是被读取还是被忽略?

【问题讨论】:

链接您的代码。你读过吗? 在我的代码中,我没有阅读自己的 package.json。好的,基本问题是:如果我在 package.json 中有像“mongodb”:“~1.4.0”这样的依赖项,但实际上我在 node_modules 中只安装了 mongodb 1.3.3,我的应用程序是否仍然会启动,因为 node 并没有真正启动阅读 package.json? 【参考方案1】:

package.json其实是node自己使用的。下面是代码:https://github.com/joyent/node/blob/master/lib/module.js#L101 基本上,当您 require 一个目录时,它会检查该目录是否有 package.json 以及是否使用来自它的 main 属性的文件。

否则package.json 仅用于npm,但没有什么能阻止您在代码中阅读它。

【讨论】:

【参考方案2】:

当然是 package.json !您可以定义当您键入节点“appName”时将调用的应用程序起点(文件)。

要定义该参数和其他参数(依赖项..etc),请键入:npm init 并按照控制台向导进行操作。

您可以查看本指南:http://package.json.nodejitsu.com/

【讨论】:

我知道 npm init。我不确定节点是否在启动时读取它。

以上是关于节点使用 package.json 文件吗?的主要内容,如果未能解决你的问题,请参考以下文章

Javascript:在 gulpfile.js 中获取 package.json 数据

不在节点快递应用程序中将测试文件夹发送到生产环境

你真的了解package.json吗?

Facebook Flux todomvc 教程 - 由于 package.json 文件,无法启动简单的节点 http-server

节点模块未安装

我应该提交 yarn.lock 和 package-lock.json 文件吗?