gpt4 book ai didi

java - 将调试器附加到 JNI_CreateJavaVM 创建的 JVM

转载 作者:行者123 更新时间:2023-11-29 05:31:24 33 4
gpt4 key购买 nike

这是在 Ubuntu 12.04/Java 7,64 位上

致力于为 WebkitGtk 版本 2 创建 java 绑定(bind)的项目。我对 WebkitGTK 的主要兴趣是 DOM 访问和操作,而不是仅仅显示网页。对于 V2,WebkitGtk 团队更改了架构,允许通过扩展访问 DOM。扩展由 WebKitWebProcess 加载,这是一个在 webkit 启动时触发的单独进程。

我已经控制了大部分。我的扩展正在加载,JVM 已启动,我的 Java 类正在加载并且大部分都按预期工作。现在我的调试技术基本上是 println 语句和/或日志语句。

想知道我是否可以附加一个 java 调试器,以便我可以更轻松地调试 java 代码。如果我运行 jps 命令,WebKitWebProcess 的 PID 会显示出来。所以有人知道这个进程有JVM。首选调试器将是 eclipse。

基本上它归结为如何在使用 JNI_CreateJavaVM 启动 VM 且进程已在运行的情况下附加 Java 调试器。

最佳答案

原来很简单。创建 VM 时,只需按如下方式传递调试器选项。将调试器连接到端口 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";

关于java - 将调试器附加到 JNI_CreateJavaVM 创建的 JVM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20986051/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com