【问题标题】:Creating part programmatically not working in kepler以编程方式创建零件在开普勒中不起作用
【发布时间】:2013-06-28 07:24:04
【问题描述】:

我正在 Juno 中创建一个 RCP 应用程序。

在那个应用程序中,我正在以编程方式创建基于 PartDescriptor 的部件,如下所示。

 MPart part = partService.createPart("discripto.id");
 part.setElementId("element.id");        

在 Eclipse 4.2.2 之前它一直运行良好。

当我尝试在 Eclipse Kepler 中运行时,相同的代码,它没有抛出任何异常视图就像下面没有任何控制:

谁能告诉我我在这里缺少什么。

【问题讨论】:

    标签: java eclipse eclipse-plugin eclipse-juno eclipse-kepler


    【解决方案1】:

    发布问题后找到答案:

    问题:

    @PostConstruct注解的方法没有被调用

    解决方案:来自Why isn't my @Inject-able/@PostConstruct methods being injected?

    注入失败通常有两个原因。

    注释不匹配:确保您的包使用 Import-Package 和包版本来拉入标准注释,而不是 Require-Bundlejavax.annotation 捆绑包上。

    Import-Package: javax.inject;version="1.0.0",javax.annotation; version="1.0.0"
    

    无法解析的注入:注入器尝试解析上下文中的对象。如果一个对象不能在上下文中被解析,并且它没有被标记为@Optional,那么这个方法将不会被注入。当这种情况发生时,注入器通常不会记录,因为这是意料之中的。

    我的问题是因为第一个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-25
      • 1970-01-01
      • 2017-12-11
      • 1970-01-01
      相关资源
      最近更新 更多