如果已經得到回答,我很抱歉;我的搜索沒有顯示任何一個。Heroku工人的工作。如何設置工作進程以及播放框架web
我在Heroku上部署了一個應用程序。在同一個版本中,我還有另一個Worker類和main方法。我想將這個類作爲工作者而不是網頁來運行。當我嘗試運行它時,它給了我ClassDefNotFound異常,這很明顯,因爲我沒有爲此過程提供類路徑。
我該如何弄清楚應該是什麼類路徑(罐子和類都)?或者有沒有其他的方式來做到這一點?
將類分開工作進程的原因是要獨立於Web應用程序進行擴展。
這裏有更多的細節。我Procfile有以下條目,
web: target/start -Dhttp.port=$PORT -DapplyEvolutions.default=true -DapplyDownEvolutions.default=true -Ddb.default.url=$DATABASE_URL ${JAVA_OPTS}
worker: target/start com/company/test/worker/WorkerApplication ${JAVA_OPTS}
作業人員進入有類「WorkerApplication」,它需要運行,但是Heroku的是無法找到這些類文件和其他依賴的唯一名字。
通過使用相同的$ {}港兩次不,我們有端口上的衝突? Heroku是否使用不同的端口設置運行工作進程? – anfuerer
Procfile的每一行都有自己的dyno(即容器)和自己的端口運行,所以沒有端口衝突。 – ryanbrainard
在我的Play版本(2.0.4)中,這是-Dglobal = ...,而不是-Dapplication.global = ... - 請注意文檔不正確:http://www.playframework.com/documentation/ 2.0.4/ScalaGlobal – jsalvata