没有 MVN 的 NodeJS 项目中的 Maven Profile 概念

Maven Profile concept in a NodeJS Project without MVN

你好 stakOverFlowers :D
我有一个简单的 NodeJS WebApp,它使用 Lerna 来管理项目。所以我有一个包目录,其中包含 n 个不同的项目,每个项目使用不同的任务运行工具。

我总是在 java 环境中使用 Maven 构建配置文件,但对于此 NodeJS 项目,不会使用 Maven。
所以问题是…… 有没有办法在不使用 MVN 的情况下重现 Maven Build Profile 概念?

简而言之,我需要在不使用 MVN 的情况下在 nodejs 中使用构建配置文件来为不同的环境(例如生产环境)自定义构建 v/s 开发环境。

有办法吗? 感谢所有

您可以通过将您的配置作为键值对存储在 JSON 文件中来实现,就像您在 Java 中的属性文件中一样。 然后通过某种方式或其他方式调用环境特定配置文件中的属性,例如 production.json 或 stage.json 或 qa.json.

执行此操作的一种简单方法是使用名为 config

的模块

使用它你可以传递 NODE_ENV=production(或 dev 或 qa 等等)并访问相关配置。这将帮助您实现环境分析。

您也可以将配置存储在 JS 文件中,但我个人更喜欢 JSON 文件来存储配置。

但是如果您想了解由 package.json 文件完成的依赖项管理,它与您的 pom.xml 文件有点相似。 有关它的更多详细信息,您可能需要阅读 this official documentation

根据 TGW 的建议,我的解决方案有效!! 只需安装配置模块,并创建一个包含 .json 个文件的目录。

$ npm install config $ mkdir config $ vi config/default.json

如果你在 windows 机器上,请使用 NODE_ENV=production 选择你的 NODE_ENV 然后执行你的网络应用程序。 在您的 .js 文件中放置诸如您的 dbConnection 主机和密码之类的信息....并使用以下方式检索它:

var config = require('config'); var dbConfig = config.get('JsonItem.dbConfig');

..有关 https://github.com/lorenwest/node-config

的更多详细信息