2016-10-03 104 views
0

我正在寫一個Java的電報機器人。這個機器人將來會在Heroku上託管。現在我只是用Gradle構建它並在本地運行它:Heroku本地web調試與Intellij IDEA

heroku local web 

命令。有什麼方法可以使用Intellij IDEA進行調試嗎?

+1

你可以在沒有heroku的情況下從IDEA運行你的機器人,並使用getUpdates接收消息 –

+0

謝謝pengrad,這對我很有用!愚蠢的事情 - 我沒有注意到我在其中一個項目類中使用了'main'方法。 – Kirill

回答

4

是的,運行heroku local在引擎蓋下啓動一個普通的Java進程。您可以通過運行jps(不確定這是否適用於Windows)來確認。

爲了使用Intellij進行調試,您需要提供適當的JVM選項來啓用調試。例如:

-Xdebug -Xrunjdwp:transport=dt_socket,address=9090,server=y,suspend=n 

你可以把這些你Procfile或將它們設置爲JAVA_OPTS和參考,在您Procfile的環境變量。

一旦heroku local過程開始時,你可以確認它的工作運行:

jdb -attach localhost:9090 

然後你就可以在連接的IntelliJ遠程調試器上localhost:9090