儘管我發現PL/Java是PostgreSQL的強大插件,但是我找不到一種遠程調試PSQL DBMS上加載的Classes的方法。是否可以調試PL/Java(理想情況下來自Eclipse)?
這可能實現嗎?
在此先感謝!
儘管我發現PL/Java是PostgreSQL的強大插件,但是我找不到一種遠程調試PSQL DBMS上加載的Classes的方法。是否可以調試PL/Java(理想情況下來自Eclipse)?
這可能實現嗎?
在此先感謝!
我想你可以設置pljava.vmoptions
來啓用調試幷包含端口號來監聽,然後使用Eclipse的「調試遠程應用程序」啓動器連接到它。
因此,JVM選項-agentlib:jdwp=transport=dt_socket,suspend=n,address=localhost:55000
將使JVM在端口55000上偵聽調試器。然後在Eclipse中打開「Debug configurations ..」對話框,在左側的啓動類型窗格中右鍵單擊「Remote Java Application」,並更新右側的連接屬性以使用端口55000.應該將調試啓動程序與一個項目,以及選擇該項目的課程路徑和來源。
注意我實際上沒有嘗試這在postgresql中,但這相當於我總是用來從shell腳本而不是從Eclipse內部運行JBoss。
我需要稍微更改選項行。工作之一是-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=localhost:8000
。如果沒有server=y
部分,調試器會抱怨丟失傳輸。有了上述,一切都奏效了。
感謝您的提示!就像你一樣,我也以這種方式調試JBoss,完全沒有問題。但是,由於某些原因,我無法使它與PL/Java一起工作。我所做的: 1.在postgresql.conf中添加「pljava.vmoptions = ...」行 2.創建並配置新的啓動配置(Eclipse) 3.啓動postgresql 4.啓動遠程Java應用程序 - >無法連接到VM 我做錯了什麼? – 2010-06-18 00:27:03
選擇這個答案是正確的(儘管目前我無法完成),因爲它應該是正確的做法。 – 2010-06-20 21:05:19