这是在64位的Ubuntu 12.04/ Java 7上
在为WebkitGtk版本2创建java绑定的项目中工作。我对WebkitGTK的主要兴趣是DOM访问和操作,而不是仅仅显示网页。对于V2,WebkitGtk团队改变了允许通过扩展访问DOM的架构。扩展由WebKitWebProcess加载,它是在webkit启动时触发的单独进程。
我已经控制住了大部分情况。我的扩展被加载了,JVM启动了,我的java类也被加载了,并且大部分工作都和预期的一样。现在,我的调试技术基本上是println语句和/或log语句。
我想知道我是否可以附加一个java调试器,这样我就可以更容易地调试java代码。如果我运行jps命令,WebKitWebProcess的PID确实出现了。所以有人知道这个进程有JVM。首选的调试器将是eclipse。
基本上,它归结为如何附加java调试器,其中VM使用JNI_CreateJavaVM启动,而进程已经在运行。
发布于 2014-01-09 03:32:36
事实证明这很简单。在创建VM时,只需传递调试器选项,如下所示。将debugger连接到端口9836,然后将您连接到调试器中。
JavaVMOption options[3];
options[0].optionString = <your classpath>;
options[1].optionString = "-Xdebug";
options[2].optionString = "-agentlib:jdwp=transport=dt_socket,server=y,address=9836,suspend=n"; https://stackoverflow.com/questions/20986051
复制相似问题