问题永远使用运行节点应用程序

所以我有一个node.js应用程序,我正在使用node-config-manager来pipe理各种环境(开发,分期,生产)。

我试图永远使用在后台运行此过程,但是当我永远运行启动/path/to/main.js,它告诉我

Error: No file for this config - app. 

错误是说它来自第9行。当它第一次尝试添加configuration文件,app.json。

 1. import configManager from 'node-config-manager'; 2. const options = { 3. configDir: './config', 4. env: 'develop', 5. camelCase: true 6. }; 7. console.log(process.env.NODE_ENV); 8. configManager.init(options); 9. configManager.addConfig('app'); 10. configManager.addConfig('logger'); 11. configManager.addConfig('db'); export default configManager; 

在我的configuration文件夹里,我有三个其他的文件夹,“开发”,“分期”和“生产”。

在所有这些文件夹中,我有三个文件,app.json,db.json和&logger.json。

所以我不确定是什么原因造成这里的问题。 configuration“开发”确实存在,但似乎有什么问题。

这个应用程序运行良好,当我用nodemon启动它,这只是永远是这样的问题。

我是否理解节点configurationpipe理器的工作原理,错过了一些东西? 我以为我所要做的就是将我的NODE_ENVvariables改为我的configuration目录中的文件夹的名称,我会被设置。

在此先感谢所有的帮助。

configuration文件的./指令查看当前工作目录的相对path。 永远可能不是从项目的工作目录运行,所以找不到文件。

如果你将项目生命在/path/to那么你需要永远把它作为--workdingDir参数来提供。

forever start /path/to/main.js --workingDir=/path/to/

应该照顾它