调试带有源jar的Equinox SDK

时间:2015-11-11 11:08:19

标签: java eclipse equinox p2

我下载了Equinox SDK Mars 1,目的是调试和观察Eclipse的启动过程。我正在尝试使用我们获得的源jar以及Equinox框架的分发和调试过程的P2。

目前,我已经创建了一个config.ini文件作为配置文件,并尝试在命令行中运行org.eclipse.equinox.launcher_(version).jar但是当我运行它时,似乎没有在我关闭SDK之前做任何回应。此外,我使用源jar并运行SDK进行调试的努力是徒劳的。

如果有人能为我提供任何帮助,我将不胜感激。

2 个答案:

答案 0 :(得分:0)

如果您下载Eclipse for RCP and RAP Developers。 启动它进入插件视图并搜索" org.eclipse.osgi_3.10.101.v20150820-1432.jar"并选择上下文菜单"导入为 - >源项目"。然后打开类EclipseStarter.java并在main"中设置断点。 - >现在您已准备好调试equinox OSGi。

答案 1 :(得分:0)

我设法通过IntelliJ附加的源jars方法调试Equinox框架和P2代码。我不完全确定这是否是最好的程序,但它符合我的目的。

  1. 由于我想观察Equinox P2的dropins功能,我提取了Equinox SDK的插件文件夹的org.eclipse.equinox.p2.reconciler.dropins.source_(version).jar并在IntelliJ中打开它。然后我将断点添加到我想要的任何位置。

  2. 由于这只是一个问题,我们将设置我们的Java SDK。只需选择打开项目所需的Java SDK即可。

  3. 然后,您可以通过File->添加新库。项目结构 - >图书馆标签。您可以添加(+签名)库,新的Java项目库,并从Equinox SDK的插件集中选择要添加的包。

  4. 您将能够在“项目结构”窗口的子窗口中的“类别”标题下看到已添加新的jar。在子窗口中,您可以选择+进一步为已选择的jar附加源jar。

    例如,如果从插件中选择了org.eclipse.equinox.simpleconfigurator.manipulator_(version).jar,则可以选择org.eclipse.equinox.simpleconfigurator.manipulator.source_(version).jar作为相应的源代码。用上面的方法制作jar。

    您可以选择库jar文件,并在附加的相应源jar中选择断点。

    1. 通过设置调试配置运行org.eclipse.equinox.launcher_(version).jar。 (例如:java -jar -agentlib:jdwp = transport = dt_socket,server = y,suspend = y,address = 5005 org.eclipse.equinox.launcher_(version).jar)
    2. 注意:必须说明这种方法确实有一个已知的缺点,因为我们无法保存任何更改(例如:添加断点),每次我们必须执行上述设置。但这有助于我为Equinox代码进行调试。