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

时间:2018-01-06 13:17:16

标签: javascript node.js build production maven-profiles

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

我总是在java环境中使用Maven Build Profile但是对于这个NodeJS项目maven将不会被使用 所以问题是...... 有没有办法在不使用MVN的情况下重现Maven Build Profile概念?

简而言之,我需要在nodejs中使用构建配置文件,而不使用MVN,以便为不同的环境(如Production v / s开发环境)自定义构建。

有办法吗? 感谢所有

2 个答案:

答案 0 :(得分:0)

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

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

的模块

使用此功能,您可以传递NODE_ENV = production(或dev或qa)并访问相关配置。这将有助于您实现环境分析。

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

但是如果你想知道package.json文件所做的依赖关系管理有点类似于你的pom.xml文件。 有关它的更多详细信息,您可能需要阅读this official documentation

答案 1 :(得分:0)

我的解决方案,遵循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

的更多详情