Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse e4 RCP应用程序无法以“启动”;无法从URI中检索捆绑包";错误_Java_Eclipse_Eclipse Plugin_Eclipse Rcp_E4 - Fatal编程技术网

Java Eclipse e4 RCP应用程序无法以“启动”;无法从URI中检索捆绑包";错误

Java Eclipse e4 RCP应用程序无法以“启动”;无法从URI中检索捆绑包";错误,java,eclipse,eclipse-plugin,eclipse-rcp,e4,Java,Eclipse,Eclipse Plugin,Eclipse Rcp,E4,当尝试启动我正在开发的Eclipse4 RCP应用程序时,将显示以下错误消息 !ENTRY org.eclipse.e4.ui.workbench 4 0 2018-05-05 14:01:24.060 !MESSAGE Unable to retrieve the bundle from the URI: bundleclass://com.mycompany.myapp/com.mycompany.myapp.demo.DemoPart 我认为这个问题可能是由于feature.xml文件中

当尝试启动我正在开发的Eclipse4 RCP应用程序时,将显示以下错误消息

!ENTRY org.eclipse.e4.ui.workbench 4 0 2018-05-05 14:01:24.060
!MESSAGE Unable to retrieve the bundle from the URI: bundleclass://com.mycompany.myapp/com.mycompany.myapp.demo.DemoPart
我认为这个问题可能是由于
feature.xml
文件中没有定义插件造成的,但是我无法确定缺少哪个插件。使用插件的
MANIFEST.MF
文件的“依赖关系分析”部分下的“显示插件依赖关系层次结构”功能,我已将所有插件依赖关系包含在
feature.xml
文件中

该产品基于特性,由我开发的插件和从EclipseOrbit中引入的第三方依赖项组成。应用程序当前正在使用Eclipse中的产品文件启动

我的问题是

  • 是否有可能从EclipseRCP应用程序获取更详细的错误消息,以指示问题的原因
  • 我是否可以采取其他故障排除步骤来找出问题的原因
  • 假设问题是由缺少的插件引起的,那么是否有可能识别出真正缺少的插件

  • 解决方案是使用OSGI控制台确定无法加载捆绑包的原因。这需要几个步骤:

  • 将参数
    -console 5555
    添加到产品文件启动参数中
  • 使用端口5555上的telnet或EclipseIDE中的console视图连接到控制台
  • 使用命令
    ss
    查找捆绑包ID,其中
    是不会加载的捆绑包的名称,或者使用命令
    ss
    在列表中查找捆绑包
  • 运行命令
    diag
    ,其中
    是从上一步获得的ID。这应该说明捆绑失败的原因
  • 如果问题是由于缺少依赖项造成的,请查找一个或多个带有文本
    未解决需求的条目
    ,以及
    feature.xml
    文件缺少的插件

  • 可能需要多次重复步骤2到5以查找所有缺少的依赖项。

    查看workspace.metadata目录中的.log文件,查看是否有更详细的消息。.log文件中没有任何内容。日志文件中最近的条目是在我使用产品文件启动应用程序之前的一段时间。还尝试删除日志文件,但在启动应用程序时不会重新创建日志文件。是否有增加日志记录级别的选项?您可以尝试使用-consoleLog-debug标志。我已将
    -consoleLog-debug标志添加到产品文件启动参数中。它不会向.log文件中添加任何内容,但会向控制台打印一些额外的信息,尽管没有任何内容指示问题的原因。它打印的信息是
    配置位置
    配置文件
    安装位置
    框架位置
    框架类路径
    启动位置
    调试选项
    ,以及
    加载捆绑包的时间