2017-07-26 43 views
0

我這裏有一個非常簡單的項目https://github.com/sherry-ummen/javadebuggingnotworkingJava遠程調試不適用於Eclipse或IntelliJ。幫助需要

我想是因爲我需要它做了一個類似的情況,所以我想用一個簡單的想出來讓遠程調試工作。

我已經把一個破發點,在第12行沒有Maven構建創建罐子,也可以設置遠程調試配置,這enter image description here
並開始調試我用下面的命令

的java -Xdebug -Xrunjdwp:transport = dt_socket,address = 8998,server = y -jar my-debug-test-0.0.1-SNAPSHOT.jar

現在當進程正在偵聽時,我轉到IntelliJ並按遠程調試配置那麼我在Intellij輸出窗口上得到以下消息而不會觸及斷點。

連接到目標虛擬機,地址: '本地主機:8998',運輸: '插座'

從目標VM斷開,地址: '本地主機:8998',運輸: '插座'

而且還在那裏,我開始了java程序得到以下消息停止現在

C:\Users\sherry.ummen\eclipse-workspace\my-debug-test\target>java -Xdebug - 
Xrunjdwp:transport=dt_socket,address=8998,server=y -jar my-debug-test-0.0.1- 
SNAPSHOT.jar 
Listening for transport dt_socket at address: 8998 
no main manifest attribute, in my-debug-test-0.0.1-SNAPSHOT.jar 

控制檯窗口,我真的不明白爲什麼過b這樣做,我看不到我的斷點。這可能是一個非常愚蠢的問題,但我的Java開發技能非常有限,所以對我來說這是一個頭痛的問題。

回答

1

您的情況IDEA或Eclipse已成功連接到該進程。 問題是,在你的jar中沒有定義的主類(應該在清單中定義)。 所以java進程會立即停止,因爲它沒有主要的類來運行。

在罐子裏,META-INF的Filder

,應該有一個文件名MANIFEST.MF,在該文件中應該有這樣的

Main-Class: mypackage.MyMainClass 
+0

一個條目非常感謝你。對不起,延遲迴復,因爲我正在弄清楚如何在POM文件中做到這一點。補充說它現在起作用了。 – Sherry