2015-04-23 60 views
10

我正在嘗試使用grails run-app --debug-fork來調試Grails 3.x應用程序。但是當應用程序啓動時,它不會等待調試器附加。關於如何調試Grails 3.x應用程序的任何解決方案?調試Grails 3.x應用程序

回答

20

請使用--debug-jvm標誌。 例如:grails --debug-jvm run-app

+3

有沒有辦法在IDE中使用這個選項? – IcedDante

+0

@IcedD​​ante您可以在任何IDE中輕鬆使用它,只需在命令字段中寫入'--debug-jvm',即可配置運行設置。所有標準IDE都支持額外的命令行參數。 –

3

另一種選擇是直接運行位於grails-app/initApplication類。它有一個static void main並作爲常規應用程序運行。您可以使用調試配置文件直接從IDE運行它。

10

在IntelliJ中,您可以右鍵單擊Gradle任務​​並選擇調試。

2

在IntelliJ IDEA 2016.1中,我創建了兩個配置。這使我可以充分利用IntelliJ IDEA提供的所有上下文菜單等。方法如下:

  1. 第一種配置是「運行」配置。編輯默認配置 並在「命令行」字段中輸入 run-app --debug-jvm
  2. 第二種配置是「遠程」配置。在「運行/調試」對話框中,單擊+符號並從 列表中選擇「遠程」。將其命名爲「調試」並保存。
  3. 從頂部配置下拉列表中選擇您的「運行」配置,然後點擊綠色箭頭運行應用程序。監視控制檯 輸出,直到看到消息 Listening for transport dt_socket at address: 5005
  4. 選擇您在步驟2中創建的遠程調試配置文件,然後單擊調試按鈕。一會兒,控制檯輸出將會顯示爲 Grails application running at http://localhost:8080 in environment: development

成功!

+0

我的項目運行良好,但如果我嘗試調試,如上面提供的步驟,我得到了這個錯誤錯誤org.apache.tomcat.jdbc.pool.ConnectionPool - 無法創建池的初始連接。 – Ashu

+0

在gradle文件中我加了這個 buildscript-> dependencies-> classpath'mysql:mysql-connector-java:5.1.29'now it works :) – Ashu