启用调试模式

时间:2018-01-06 21:35:15

标签: eclipse debug-mode rational-rsa

我正在尝试在Ubuntu 14.04 64位上启用Rational Software Architect 9.6(基于eclipse)的调试模式。我按照Setting up the pluglet debugging support此链接中的说明进行操作。

我创建了一个新的eclipse_debug.ini,如下所示:

-vm
jdk/jre/bin/javaw
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.400.v20160518-1444
-install
/opt/IBM/SDP_96
--launcher.GTK_version
--launcher.appendVmargs
2
-startup
plugins/org.eclipse.equinox.launcher_1.3.200.v20160318-1642.jar
-vmargs
-Xquickstart
-Xms512m
-Xmx1536m
-Xmnx64m
-Xgcpolicy:gencon
-Xscmx96m
-Xshareclasses:name=IBMSDP_%u
-XX:MaxPermSize=512M
-Xcompressedrefs
-Xj9
-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,onthrow=com.ibm.xtools.pluglets.ui.internal.debug.PlugletDebugException,address=8000
-Dcom.ibm.ws.management.event.max_polling_interval=1000
-Djava.util.Arrays.useLegacyMergeSort=true

然后我尝试使用以下命令午餐:

/opt/IBM/SDP_96$ /opt/IBM/SDP_96/eclipse -product com.ibm.rational.rsa4ws.product.v96.ide --launcher.ini ./eclipse_debug.ini

但是,它无法启动以下错误消息:

JVM terminated. Exit code=160
/opt/IBM/SDP_96//jdk/jre/bin/javaw
-Xquickstart
-Xms512m
-Xmx1536m
-Xmnx64m
-Xgcpolicy:gencon
-Xscmx96m
-Xshareclasses:name=IBMSDP_%u
-XX:MaxPermSize=512M
-Xcompressedrefs
-Xj9
-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,onthrow=com.ibm.xtools.pluglets.ui.internal.debug.PlugletDebugException,address=8000
-Dcom.ibm.ws.management.event.max_polling_interval=1000
-Djava.util.Arrays.useLegacyMergeSort=true
-jar /opt/IBM/SDP_96//plugins/org.eclipse.equinox.launcher_1.3.200.v20160318-1642.jar
-os linux
-ws gtk
-arch x86_64
-showsplash
-launcher /opt/IBM/SDP_96/eclipse
-name Eclipse
--launcher.library /opt/IBM/SDP_96//plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.400.v20160518-1444/eclipse_1617.so
-startup /opt/IBM/SDP_96//plugins/org.eclipse.equinox.launcher_1.3.200.v20160318-1642.jar
--launcher.overrideVmargs
-exitdata 1ea20025
-install /opt/IBM/SDP_96 2
-product com.ibm.rational.rsa4ws.product.v96.ide
-vm /opt/IBM/SDP_96//jdk/jre/bin/javaw
-vmargs
-Xquickstart
-Xms512m
-Xmx1536m
-Xmnx64m
-Xgcpolicy:gencon
-Xscmx96m
-Xshareclasses:name=IBMSDP_%u
-XX:MaxPermSize=512M
-Xcompressedrefs
-Xj9
-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,onthrow=com.ibm.xtools.pluglets.ui.internal.debug.PlugletDebugException,address=8000
-Dcom.ibm.ws.management.event.max_polling_interval=1000
-Djava.util.Arrays.useLegacyMergeSort=true
-jar /opt/IBM/SDP_96//plugins/org.eclipse.equinox.launcher_1.3.200.v20160318-1642.jar

并在命令屏幕中以下列内容开始转储错误

21:29:11.842 ERROR: [OptionParser.cpp:180] Specify launch=<command line> when using onthrow or onuncaught option
21:29:11.842 ERROR: [OptionParser.cpp:180] Specify launch=<command line> when using onthrow or onuncaught option
21:29:11.842  INFO: [Agent.cpp:345] JDWP error: Bad agent options: transport=dt_socket,server=y,suspend=n,onthrow=com.ibm.xtools.pluglets.ui.internal.debug.PlugletDebugException,address=8000
21:29:11.842  INFO: [Agent.cpp:345] JDWP error: Bad agent options: transport=dt_socket,server=y,suspend=n,onthrow=com.ibm.xtools.pluglets.ui.internal.debug.PlugletDebugException,address=8000
JVMJ9TI064E Agent initialization function Agent_OnLoad failed for library jdwp, return code -1
Unhandled exception
Type=Segmentation error vmState=0x00000000
J9Generic_Signal_Number=00000004 Signal_Number=0000000b Error_Value=00000000 Signal_Code=00000080

那么我正在做什么的问题是什么?我正在遵循指示,我不清楚是什么问题。我验证了ini文件,它没有包含任何隐藏的字符。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

我尝试执行以下操作并且它有效..至少eclipse在调试模式下启动,我能够在插件调试器中共进午餐。

我从上面的onthrow选项中删除了-Xrunjdwp部分,因此eclipse_debug.ini现在如下所示:

-vm
jdk/jre/bin/javaw
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.400.v20160518-1444
-install
/opt/IBM/SDP_96
--launcher.GTK_version
--launcher.appendVmargs
2
-startup
plugins/org.eclipse.equinox.launcher_1.3.200.v20160318-1642.jar
-vmargs
-Xquickstart
-Xms512m
-Xmx1536m
-Xmnx64m
-Xgcpolicy:gencon
-Xscmx96m
-Xshareclasses:name=IBMSDP_%u
-XX:MaxPermSize=512M
-Xcompressedrefs
#Added by A.Ibrahim
-Xj9
-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
-Dcom.ibm.ws.management.event.max_polling_interval=1000
-Djava.util.Arrays.useLegacyMergeSort=true

现在这个选项是:

<强> -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000

它运作正常。