gpt4 book ai didi

java - 需要从 eclipse 插件的本地调试更改为 vm 中的远程调试

转载 作者:太空宇宙 更新时间:2023-11-04 13:02:01 25 4
gpt4 key购买 nike

我目前正在 centos7 笔记本电脑上调试 eclipse 插件。我需要更改此设置,以便测试实例在 VM (ubuntu14) 中运行,然后我远程连接到该实例。我了解这方面的一些/大部分必需元素,但我不确定至少有一个。

我首先必须在虚拟机上配置网络。我只有一个适配器,使用 NAT。我想我没有完全连接,尽管我不确定这会带来什么问题。我在“仅主机”模式下添加了第二个适配器。现在我的虚拟机可以上网了,我的主机可以拿到虚拟机的 IP,我相信虚拟机可以拿到主机的 IP(虽然我不知道我需要那个)。

我在 VM 上安装了 Eclipse,并将“-Xdebug”参数添加到 VM 上 Eclipse 安装中的 eclipse.ini 文件(使用“suspend=n”)。

然后我使用“远程 Java 应用程序”在主机上创建了一个调试配置,指定了 guest 的 IP 和我在 guest 的 eclipse.ini 中的“-Xdebug”参数中指定的端口号,并且还添加了我的几个相关插件项目对“源”的引用。我运行了该配置,我看到它已连接,并在调试窗口中显示了一组线程。

然后我终止了客户机上的 Eclipse,并看到主机上的调试 session 终止了。这表明它们已正确连接。

这是我不确定的后续步骤。我的插件代码在主机上。调试配置指定了插件项目的来源,但我现在必须在 guest 上做什么?

最佳答案

我设法开发了一个可行的实现。在此线程中,我从其他人那里得到了很多帮助:https://www.eclipse.org/forums/index.php/t/1071968/ .

基本上,我有一个运行 Eclipse 的虚拟机,它有一个项目工作区,这些项目引用与主机上的 Eclipse 相同的文件(通过共享文件夹)。在 VM 上,我有一个类型为“Eclipse Application”的运行配置(不是调试),其中包含以下 VM args:“-Xdebug -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000”。

在主机 Eclipse 上,我有一个“远程 Java 应用程序”类型的调试配置,指向 VM 的 IP 和相同的端口。

Eclipse 之外的一个重要细节是 VM 需要有两个适配器,而不是默认创建的适配器。除了基于 NAT 的适配器外,我还必须有一个“仅主机适配器”。

关于java - 需要从 eclipse 插件的本地调试更改为 vm 中的远程调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33637894/

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