基于Maven Tycho功能的产品引发运行时错误

时间:2018-10-23 10:51:12

标签: maven eclipse-plugin rcp tycho

我正在关注vogella上的tycho教程。

本教程在第9章中提供了RCP产品构建说明。

本章摘要:

  1. 使用Eclipse 4 RCP Application Template

  2. 创建插件项目(prjA)
  3. 为Maven构建创建常规项目(prjB)。

  4. 将生成的.product文件从prjA移动到prjB。

    (我不明白为什么需要执行此步骤。)

  5. 输入ID,创建pom.xml

  6. 选择基于功能的

  7. 配置开始级别,构建。

构建过程顺利完成,但是当我运行生成的二进制文件时,

我得到以下堆栈跟踪:

!SESSION 2018-10-23 18:05:38.742 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.8.0_172
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_KR
Framework arguments:  -clearPersistedState -keyring /Users/upoque/.eclipse_keyring
Command-line arguments:  -os macosx -ws cocoa -arch x86_64 -clearPersistedState -keyring /Users/upoque/.eclipse_keyring

!ENTRY org.eclipse.equinox.app 0 0 2018-10-23 18:05:40.561
!MESSAGE Product org.rubis.oscar.rcp.product could not be found.

!ENTRY org.eclipse.osgi 4 0 2018-10-23 18:05:41.392
!MESSAGE Application error
!STACK 1
java.lang.NullPointerException
    at org.eclipse.emf.common.util.URI$URIPool$PlatformAccessUnit.setValue(URI.java:865)
    at org.eclipse.emf.common.util.URI$URIPool.intern(URI.java:1949)
    at org.eclipse.emf.common.util.URI.createPlatformPluginURI(URI.java:2718)
    at org.eclipse.e4.ui.internal.workbench.swt.E4Application.determineApplicationModelURI(E4Application.java:408)
    at org.eclipse.e4.ui.internal.workbench.swt.E4Application.loadApplicationModel(E4Application.java:349)
    at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:253)
    at org.eclipse.e4.ui.internal.workbench.swt.E4Application.start(E4Application.java:149)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:653)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1499)

但是,当我基于插件(而不是基于功能)构建产品时,没有任何错误。

为什么会出现此错误,该如何解决?

0 个答案:

没有答案