Java 与Maven/Tycho的执行问题

Java 与Maven/Tycho的执行问题,java,eclipse,maven,eclipse-rcp,tycho,Java,Eclipse,Maven,Eclipse Rcp,Tycho,我有一个基于3.xapi的eclipsercp应用程序。我的应用程序由几个透视图组成,每个透视图都包含几个视图和编辑器。第一个透视图从应用程序启动时开始,导航视图在主插件中定义。问题在于其他透视图中的视图是在不同的插件中定义的,以便更好地维护代码。 我使用透视图扩展和以下代码在主插件中添加视图: public class Perspective implements IPerspectiveFactory { public void createInitialLayout(IPageLayo

我有一个基于3.xapi的eclipsercp应用程序。我的应用程序由几个透视图组成,每个透视图都包含几个视图和编辑器。第一个透视图从应用程序启动时开始,导航视图在主插件中定义。问题在于其他透视图中的视图是在不同的插件中定义的,以便更好地维护代码。 我使用透视图扩展和以下代码在主插件中添加视图:

public class Perspective implements IPerspectiveFactory {
  public void createInitialLayout(IPageLayout layout) {
  layout.addView(NavigationView.ID, IPageLayout.TOP,
      IPageLayout.RATIO_MAX, IPageLayout.ID_EDITOR_AREA);
  }
}
奇怪的是,当我在eclipse中运行应用程序时,所有这些都可以完美地工作,但一旦我使用Maven/Tycho构建并执行创建的应用程序,插件中定义的所有透视图就不再工作了。 问题是当我添加一个新的透视图时,这个透视图会打开,但它不包含任何视图,只是一个灰色背景。 为了调试的目的,我已经添加了一些
println()
语句,并且似乎从未调用包含视图的相应插件的
Activator
。这也解释了为什么我在透视图中看不到任何视图,因为应用程序找不到在相应插件的视图扩展中定义的相应视图。 我从上面向我的
createInitialLayout
方法添加了以下
println()
语句:

System.err.println(layout.getViewLayout(NavigationView.ID));
输出为
null
,这加强了我前面的观点

现在的问题是,原因可能是什么?为什么我的插件不能启动? 我还做了另一个实验,我直接调用了插件中定义的一个方法,再次没有调用插件的
Activator
。 插件的
Bundle ActivationPolicy
设置为
lazy
。 有什么建议我下一步可以追踪问题吗

Maven/Tycho不报告任何问题,我对eclipse和Maven/Tycho使用相同的目标平台,因此我还可以排除任何依赖性问题

我非常感谢您的帮助/支持:)

致以最良好的祝愿,
Tom

你试过使用标准的eclipse产品导出功能吗?@AlexanderGavrilov我刚试过,依赖项确实有问题。。。但是我不知道如何解决这个依赖错误。。。我已经检查了目标平台,但对我来说,似乎所有必需的捆绑包都在那里。您的产品配置是如何组织的?基于插件还是基于功能?你确定你已经把所有的东西都包括进去了吗?您的workspace.metadata/.log文件中是否存在任何错误?您是否已将plugin.xml添加到build.properties中,类似这样:
bin.includes=META-INF/,\,\plugin.xml\src/main/resources
@AlexanderGavrilov我的产品基于功能,我的工作区中没有任何错误。。。奇怪的是,我可以在eclipse中执行产品,并且它可以按预期工作。。。当我在运行配置下验证插件时,它显示没有检测到任何问题。。。my build.properties的内容如下所示:bin.includes=META-INF/,\plugin\u customization.iniTry将plugin.xml添加到build.properties中,并查看是否有帮助。