讓我首先澄清一下,我已經檢查了所有可能的資源、教程、視頻和其他我可以得到的相關的 stackoverflow 問題,以便嘗試找到答案。我正在使用java 8and Eclipse Luna Service Release 2 (4.4.2) with m2e plugin,這很難相信,但似乎沒有一個示例可以清楚地解釋您如何使用 ECLIPSE 實際除錯 Maven Java 應用程式。這里有不少于 40 個不同的來源
這從我的 pom.xml 運行 exec:exec 目標,看起來像這樣
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <goals> <goal>exec</goal> </goals> </execution> </executions> <configuration> <executable>java</executable> <arguments> <argument>-classpath</argument> <classpath /> <argument>core.app.server</argument> <argument>-agentlib:jdwp=transport=dt_socket,suspend=y,server=y,address=*:49875 </argument> </arguments> <workingDirectory>${project.build.outputDirectory}</workingDirectory> </configuration> </plugin>好的,到目前為止一切順利。此時,如果我運行除錯配置,應用程式將啟動然后掛起,我假設它正在等待除錯器根據我的 pom.xml 中的引數遠程連接。所以應用程式開始掛起,此時在 Eclipse 中我正在查看
在這一點上,我已經嘗試了我能想象到的一切。我注意到 exec 插件啟動器在圖片中為 51661 的隨機埠上啟動,當我在 pom.xml 中的 exec 引數中將其設定為 49875 所以這似乎關閉了。我注意到的另一件事是,如果我
<argument>-agentlib:jdwp=transport=dt_socket,suspend=y,server=y,address=*:49875 </argument>從我的 pom.xml 中洗掉該應用程式完全啟動的行,運行良好,但這讓我無處可去。在應用程式啟動后,我嘗試使用“遠程 Java 應用程式”配置進行連接,這也不起作用。我通常使用 IntelliJ,這讓它變得輕而易舉,因為一切都是 OOTB 處理的,不幸的是我必須以類似的方式在 Eclipse 中讓它作業。如何以允許我啟動應用程式并命中斷點的方式配置除錯配置?
編輯 1 當使用引數啟動時設定
suspend=n應用程式仍然掛起agentlib:jdwp編輯 2 為了在不費力的事情上浪費一天的時間來解決這個問題,我測驗了運行
clean installfrom 和除錯配置,然后使用如下所示的 m2e 提供的 run as 命令進行測驗,m2e 命令完美地作業在哪里由于缺少參考,使用除錯配置運行的相同命令失敗。編輯 3 在此處閱讀有關 exec maven 插件的檔案

- 在以下位置設定“我的”斷點:
package com.example; public class Demo { public static void main(String[] args) { int x = 0; x ; // just to set breakpoint somewhere System.out.println(x); } }“運行”“Exec_Java”(掛起和服務器標志(和所有)都有效!)
Console(Exec_Java) 應該報告:
... [INFO] --- exec-maven-plugin:3.0.0:exec (default-cli) @ luna-res --- Listening for transport dt_socket at address: 49875 //!!“除錯”“New_Configuration”。
..和斷點停止(,我們得到“切換透視對話框”;)

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/507976.html
