2015-11-10 17 views
0

我目前正在调试centos7笔记本电脑上的eclipse插件。我需要改变它以便测试实例在VM(ubuntu14)中运行,并且我远程连接到该实例。我了解一些/所需的大部分元素,但我至少不确定一个。需要从本地调试eclipse插件更改为远程调试vm

我首先必须在VM上配置网络。我只有一个适配器,使用NAT。我想这个我没有完整的连接,但我不确定这个问题到底出了什么问题。我在“仅主机”模式下添加了第二个适配器。现在我的虚拟机可以访问互联网,我的主机可以访问虚拟机的IP,我相信虚拟机可以访问主机的IP(尽管我不知道我需要这些)。

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

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

然后我终止了来宾上的Eclipse,并看到主机上的调试会话终止。这表明它们连接正确。

这是我不确定的下一步。我的插件代码在主机上。调试配置指定插件项目的来源,但我现在必须对客人做什么?

回答

0

我设法开发了一个有效的实现。我在这个线程中得到了另一个人的很多帮助:https://www.eclipse.org/forums/index.php/t/1071968/

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

在主机Eclipse上,我有一个类型为“Remote Java Application”的调试配置,指向VM的IP和相同的端口。

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