我正在使用Node.js應用程序,並且正在使用公開我的twitter API令牌/機密的config.js文件。我這樣做是因爲我計劃在完成後開放源代碼應用程序,並且希望保留這些私人文件(並因此已將該文件放入我的文件夾.gitignore
。Heroku在heroku上找不到本地模塊(Node.js)
不管怎樣,對於我的問題 - m到處下面的錯誤日誌:
2012-04-09T22:41:12+00:00 app[web.1]: node.js:134
2012-04-09T22:41:12+00:00 app[web.1]: ^
2012-04-09T22:41:12+00:00 app[web.1]: throw e; // process.nextTick error, or 'error' event on first tick
2012-04-09T22:41:12+00:00 app[web.1]: Error: Cannot find module './config'
2012-04-09T22:41:12+00:00 app[web.1]: at require (module.js:348:19)
2012-04-09T22:41:12+00:00 app[web.1]: at Function._load (module.js:266:25)
2012-04-09T22:41:12+00:00 app[web.1]: at Function._resolveFilename (module.js:320:11)
2012-04-09T22:41:12+00:00 app[web.1]: at Object.<anonymous> (/app/app.js:6:19)
2012-04-09T22:41:12+00:00 app[web.1]: at Module._compile (module.js:404:26)
2012-04-09T22:41:12+00:00 app[web.1]: at Object..js (module.js:410:10)
2012-04-09T22:41:12+00:00 app[web.1]: at Function._load (module.js:297:12)
2012-04-09T22:41:12+00:00 app[web.1]: at EventEmitter._tickCallback (node.js:126:26)
2012-04-09T22:41:12+00:00 app[web.1]: at Module.load (module.js:336:31)
2012-04-09T22:41:12+00:00 app[web.1]: at Array.<anonymous> (module.js:423:10)
2012-04-09T22:41:13+00:00 heroku[web.1]: State changed from starting to crashed
2012-04-09T22:41:13+00:00 heroku[web.1]: Process exited with status 1
我的文件名是config.js
,和我做了:在我的應用程序var config = require('./config')
我不把它列爲我package.json
文件的依賴性,因爲它不在家。 NPM
本地運行的工頭和Procfile(如heroku的文檔說的那樣)work gre在。但是,我很困惑,爲什麼當我要求本地文件時它給了我一個錯誤。 config.js
與我的app.js
位於同一目錄級別,因此要求它的路徑是正確的。
編輯:下面是我使用的app.js
的代碼部分:
var express = require('express')
, sys = require('sys')
, request = require('request')
, config = require('./config')
感謝 - 任何幫助將不勝感激!
你有沒有試過從你的命令行開始?它說什麼 ? – Dhiraj 2012-04-10 03:00:57
嘿@userD,是的 - 我可以成功地做到這一點(注意我的問題中的第二個到最後一段)。 =( – Connor 2012-04-10 03:05:13
是否有可能顯示代碼,以便調試可能很容易 – Dhiraj 2012-04-10 03:19:35