导出的e4 RCP应用程序无法打开,因为"已损坏或不完整" (OSX)

时间:2016-07-05 21:55:28

标签: eclipse eclipse-plugin eclipse-rcp e4

我对e4 Java开发相对较新。我已经构建了一个基于RCP的应用程序,它在调试或运行Eclipse IDE(Neon)时运行。但是,当我导出部署应用程序时,单击导出的启动器会给我一个错误("您无法打开应用程序[应用程序名称],因为它可能已损坏或不完整")。我还尝试通过创建一个空的RCP应用程序来重新创建错误,并出现相同的问题。在这两种情况下,我都检查过"该产品包含原生的发射器工件"。

知道问题可能是什么?

产品档案:

<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<product name="Pearl" uid="pearl" id="Information_Extraction_Workbench.product" application="org.eclipse.e4.ui.workbench.swt.E4Application" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="true">


   <configIni use="default">
   </configIni>

   <launcherArgs>
      <programArgs>-clearPersistedState
      </programArgs>
      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
      </vmArgsMac>
   </launcherArgs>

   <windowImages/>


   <launcher name="pearl">
      <solaris/>
      <win useIco="false">
         <bmp/>
      </win>
   </launcher>


   <vm>
   </vm>


   <plugins>
      <plugin id="Information_Extraction_Workbench"/>
      <plugin id="com.ibm.icu"/>
      <plugin id="javax.annotation"/>
      <plugin id="javax.inject"/>
      <plugin id="javax.servlet"/>
      <plugin id="javax.xml"/>
      <plugin id="org.apache.batik.css"/>
      <plugin id="org.apache.batik.util"/>
      <plugin id="org.apache.batik.util.gui"/>
      <plugin id="org.apache.commons.jxpath"/>
      <plugin id="org.apache.commons.logging"/>
      <plugin id="org.eclipse.ant.core"/>
      <plugin id="org.eclipse.core.commands"/>
      <plugin id="org.eclipse.core.contenttype"/>
      <plugin id="org.eclipse.core.databinding"/>
      <plugin id="org.eclipse.core.databinding.beans"/>
      <plugin id="org.eclipse.core.databinding.observable"/>
      <plugin id="org.eclipse.core.databinding.property"/>
      <plugin id="org.eclipse.core.expressions"/>
      <plugin id="org.eclipse.core.filesystem"/>
      <plugin id="org.eclipse.core.filesystem.aix.ppc" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.hpux.ia64_32" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.java7" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.linux.ppc" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.linux.x86" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.linux.x86_64" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.macosx" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.solaris.sparc" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.win32.x86" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.win32.x86_64" fragment="true"/>
      <plugin id="org.eclipse.core.jobs"/>
      <plugin id="org.eclipse.core.resources"/>
      <plugin id="org.eclipse.core.resources.win32.x86" fragment="true"/>
      <plugin id="org.eclipse.core.runtime"/>
      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>
      <plugin id="org.eclipse.core.variables"/>
      <plugin id="org.eclipse.e4.core.commands"/>
      <plugin id="org.eclipse.e4.core.contexts"/>
      <plugin id="org.eclipse.e4.core.di"/>
      <plugin id="org.eclipse.e4.core.di.annotations"/>
      <plugin id="org.eclipse.e4.core.di.extensions"/>
      <plugin id="org.eclipse.e4.core.services"/>
      <plugin id="org.eclipse.e4.emf.xpath"/>
      <plugin id="org.eclipse.e4.ui.bindings"/>
      <plugin id="org.eclipse.e4.ui.css.core"/>
      <plugin id="org.eclipse.e4.ui.css.swt"/>
      <plugin id="org.eclipse.e4.ui.css.swt.theme"/>
      <plugin id="org.eclipse.e4.ui.di"/>
      <plugin id="org.eclipse.e4.ui.model.workbench"/>
      <plugin id="org.eclipse.e4.ui.services"/>
      <plugin id="org.eclipse.e4.ui.widgets"/>
      <plugin id="org.eclipse.e4.ui.workbench"/>
      <plugin id="org.eclipse.e4.ui.workbench.addons.swt"/>
      <plugin id="org.eclipse.e4.ui.workbench.renderers.swt"/>
      <plugin id="org.eclipse.e4.ui.workbench.renderers.swt.cocoa" fragment="true"/>
      <plugin id="org.eclipse.e4.ui.workbench.swt"/>
      <plugin id="org.eclipse.e4.ui.workbench3"/>
      <plugin id="org.eclipse.emf.common"/>
      <plugin id="org.eclipse.emf.databinding"/>
      <plugin id="org.eclipse.emf.ecore"/>
      <plugin id="org.eclipse.emf.ecore.change"/>
      <plugin id="org.eclipse.emf.ecore.xmi"/>
      <plugin id="org.eclipse.equinox.app"/>
      <plugin id="org.eclipse.equinox.bidi"/>
      <plugin id="org.eclipse.equinox.common"/>
      <plugin id="org.eclipse.equinox.concurrent"/>
      <plugin id="org.eclipse.equinox.ds"/>
      <plugin id="org.eclipse.equinox.event"/>
      <plugin id="org.eclipse.equinox.preferences"/>
      <plugin id="org.eclipse.equinox.registry"/>
      <plugin id="org.eclipse.equinox.util"/>
      <plugin id="org.eclipse.help"/>
      <plugin id="org.eclipse.jface"/>
      <plugin id="org.eclipse.jface.databinding"/>
      <plugin id="org.eclipse.nebula.widgets.tablecombo"/>
      <plugin id="org.eclipse.osgi"/>
      <plugin id="org.eclipse.osgi.compatibility.state" fragment="true"/>
      <plugin id="org.eclipse.osgi.services"/>
      <plugin id="org.eclipse.swt"/>
      <plugin id="org.eclipse.swt.carbon.macosx" fragment="true"/>
      <plugin id="org.eclipse.swt.cocoa.macosx" fragment="true"/>
      <plugin id="org.eclipse.swt.cocoa.macosx.x86_64" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.ppc" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.ppc64" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.s390" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.s390x" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.x86" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.x86_64" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.solaris.sparc" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.solaris.x86" fragment="true"/>
      <plugin id="org.eclipse.swt.motif.aix.ppc" fragment="true"/>
      <plugin id="org.eclipse.swt.motif.hpux.ia64_32" fragment="true"/>
      <plugin id="org.eclipse.swt.motif.linux.x86" fragment="true"/>
      <plugin id="org.eclipse.swt.motif.solaris.sparc" fragment="true"/>
      <plugin id="org.eclipse.swt.photon.qnx.x86" fragment="true"/>
      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>
      <plugin id="org.eclipse.swt.win32.win32.x86_64" fragment="true"/>
      <plugin id="org.eclipse.ui"/>
      <plugin id="org.eclipse.ui.cocoa" fragment="true"/>
      <plugin id="org.eclipse.ui.forms"/>
      <plugin id="org.eclipse.ui.themes"/>
      <plugin id="org.eclipse.ui.workbench"/>
      <plugin id="org.eclipse.wst.jsdt.nashorn.extension" fragment="true"/>
      <plugin id="org.w3c.css.sac"/>
      <plugin id="org.w3c.dom.events"/>
      <plugin id="org.w3c.dom.smil"/>
      <plugin id="org.w3c.dom.svg"/>
   </plugins>


   <preferencesInfo>
      <targetfile overwrite="false"/>
   </preferencesInfo>

   <cssInfo>
      <file path="/Information Extraction Workbench/css/default.css"/>
   </cssInfo>

</product>

这是错误也重复的另一个应用程序(最小示例)

<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<product name="com.example.e4.rcp.wizard" uid="blah" id="com.example.e4.rcp.wizard.product" application="org.eclipse.e4.ui.workbench.swt.E4Application" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="true">


   <configIni use="default">
   </configIni>

   <launcherArgs>
      <programArgs>-clearPersistedState
      </programArgs>
      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
      </vmArgsMac>
   </launcherArgs>

   <windowImages/>


   <launcher name="rey">
      <solaris/>
      <win useIco="false">
         <bmp/>
      </win>
   </launcher>


   <vm>
      <macos include="true">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8</macos>
   </vm>


   <plugins>
      <plugin id="com.example.e4.rcp.wizard"/>
      <plugin id="com.ibm.icu"/>
      <plugin id="javax.annotation"/>
      <plugin id="javax.inject"/>
      <plugin id="javax.servlet"/>
      <plugin id="javax.xml"/>
      <plugin id="org.apache.batik.css"/>
      <plugin id="org.apache.batik.util"/>
      <plugin id="org.apache.batik.util.gui"/>
      <plugin id="org.apache.commons.jxpath"/>
      <plugin id="org.apache.commons.logging"/>
      <plugin id="org.eclipse.ant.core"/>
      <plugin id="org.eclipse.core.commands"/>
      <plugin id="org.eclipse.core.contenttype"/>
      <plugin id="org.eclipse.core.databinding"/>
      <plugin id="org.eclipse.core.databinding.beans"/>
      <plugin id="org.eclipse.core.databinding.observable"/>
      <plugin id="org.eclipse.core.databinding.property"/>
      <plugin id="org.eclipse.core.expressions"/>
      <plugin id="org.eclipse.core.filesystem"/>
      <plugin id="org.eclipse.core.filesystem.aix.ppc" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.hpux.ia64_32" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.linux.ppc" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.linux.x86" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.linux.x86_64" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.macosx" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.solaris.sparc" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.win32.x86" fragment="true"/>
      <plugin id="org.eclipse.core.filesystem.win32.x86_64" fragment="true"/>
      <plugin id="org.eclipse.core.jobs"/>
      <plugin id="org.eclipse.core.resources"/>
      <plugin id="org.eclipse.core.resources.win32.x86" fragment="true"/>
      <plugin id="org.eclipse.core.runtime"/>
      <plugin id="org.eclipse.core.variables"/>
      <plugin id="org.eclipse.e4.core.commands"/>
      <plugin id="org.eclipse.e4.core.contexts"/>
      <plugin id="org.eclipse.e4.core.di"/>
      <plugin id="org.eclipse.e4.core.di.annotations"/>
      <plugin id="org.eclipse.e4.core.di.extensions"/>
      <plugin id="org.eclipse.e4.core.services"/>
      <plugin id="org.eclipse.e4.emf.xpath"/>
      <plugin id="org.eclipse.e4.ui.bindings"/>
      <plugin id="org.eclipse.e4.ui.css.core"/>
      <plugin id="org.eclipse.e4.ui.css.swt"/>
      <plugin id="org.eclipse.e4.ui.css.swt.theme"/>
      <plugin id="org.eclipse.e4.ui.di"/>
      <plugin id="org.eclipse.e4.ui.model.workbench"/>
      <plugin id="org.eclipse.e4.ui.services"/>
      <plugin id="org.eclipse.e4.ui.swt.gtk" fragment="true"/>
      <plugin id="org.eclipse.e4.ui.widgets"/>
      <plugin id="org.eclipse.e4.ui.workbench"/>
      <plugin id="org.eclipse.e4.ui.workbench.renderers.swt"/>
      <plugin id="org.eclipse.e4.ui.workbench.renderers.swt.cocoa" fragment="true"/>
      <plugin id="org.eclipse.e4.ui.workbench.swt"/>
      <plugin id="org.eclipse.e4.ui.workbench3"/>
      <plugin id="org.eclipse.emf.common"/>
      <plugin id="org.eclipse.emf.databinding"/>
      <plugin id="org.eclipse.emf.ecore"/>
      <plugin id="org.eclipse.emf.ecore.change"/>
      <plugin id="org.eclipse.emf.ecore.xmi"/>
      <plugin id="org.eclipse.equinox.app"/>
      <plugin id="org.eclipse.equinox.bidi"/>
      <plugin id="org.eclipse.equinox.common"/>
      <plugin id="org.eclipse.equinox.concurrent"/>
      <plugin id="org.eclipse.equinox.ds"/>
      <plugin id="org.eclipse.equinox.event"/>
      <plugin id="org.eclipse.equinox.preferences"/>
      <plugin id="org.eclipse.equinox.registry"/>
      <plugin id="org.eclipse.equinox.util"/>
      <plugin id="org.eclipse.jface"/>
      <plugin id="org.eclipse.jface.databinding"/>
      <plugin id="org.eclipse.osgi"/>
      <plugin id="org.eclipse.osgi.compatibility.state" fragment="true"/>
      <plugin id="org.eclipse.osgi.services"/>
      <plugin id="org.eclipse.swt"/>
      <plugin id="org.eclipse.swt.cocoa.macosx.x86_64" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.ppc" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.ppc64" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.s390" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.s390x" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.x86" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.linux.x86_64" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.solaris.sparc" fragment="true"/>
      <plugin id="org.eclipse.swt.gtk.solaris.x86" fragment="true"/>
      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>
      <plugin id="org.eclipse.swt.win32.win32.x86_64" fragment="true"/>
      <plugin id="org.eclipse.wst.jsdt.nashorn.extension" fragment="true"/>
      <plugin id="org.w3c.css.sac"/>
      <plugin id="org.w3c.dom.events"/>
      <plugin id="org.w3c.dom.smil"/>
      <plugin id="org.w3c.dom.svg"/>
   </plugins>


   <preferencesInfo>
      <targetfile overwrite="false"/>
   </preferencesInfo>

   <cssInfo>
   </cssInfo>

</product>

这是Eclipse想要发送的编译后出现的错误消息:

  
    

以下报告将发送给Eclipse:

  
     

------状态   ------ pluginId org.eclipse.pde.build pluginVersion 3.9.200.v20160204-0642 code 17 severity 4 message HIDDEN fingerprint
  307801a13ac4d782070cb3fca93512d0

     

异常:org.eclipse.core.runtime.CoreException:HIDDEN at   org.eclipse.pde.internal.build.site.BuildTimeFeatureFactory.parseBuildFeature(BuildTimeFeatureFactory.java:85)      在   org.eclipse.pde.internal.build.site.BuildTimeFeatureFactory.createFeature(BuildTimeFeatureFactory.java:50)      在   org.eclipse.pde.internal.build.site.BuildTimeSite.createFeature(BuildTimeSite.java:458)      在   org.eclipse.pde.internal.build.site.compatibility.FeatureReference.getFeature(FeatureReference.java:39)      在   org.eclipse.pde.internal.build.site.BuildTimeSite.resolveFeatureReferences(BuildTimeSite.java:316)      在   org.eclipse.pde.internal.build.site.BuildTimeSite.findFeature(BuildTimeSite.java:285)      在   org.eclipse.pde.internal.build.site.BuildTimeSite.findFeature(BuildTimeSite.java:277)      在   org.eclipse.pde.internal.build.BuildScriptGenerator.generateFeatures(BuildScriptGenerator.java:249)      在   org.eclipse.pde.internal.build.BuildScriptGenerator.generate(BuildScriptGenerator.java:127)      在   org.eclipse.pde.internal.core.exports.FeatureExportOperation.doExport(FeatureExportOperation.java:255)      在   org.eclipse.pde.internal.core.exports.ProductExportOperation.run(ProductExportOperation.java:105)      在org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

     

------状态   ------ pluginId org.eclipse.equinox.p2.publisher.eclipse pluginVersion 1.2.100.v20160504-1450 code 17   严重性4消息HIDDEN指纹
  b9f4abf3b28ea9e6b7a2483f4ff27615

     

------状态   ------ pluginId org.eclipse.equinox.p2.publisher.eclipse pluginVersion 1.2.100.v20160504-1450 code 17   严重性4消息HIDDEN指纹
  465298c82a36dba3f729743e02a61485

     

------报告   ------ anonymousId adc23f85-e164-4e7d-93ee-1d0b8861a2d7名称Mona电子邮件[email]评论eclipseBuildId
  4.6.0.I20160606-1100 eclipseProduct org.eclipse.epp.package.jee.product javaRuntimeVersion 1.8.0_92-b14   osgiWs cocoa osgiOs MacOSX osgiOsVersion
  10.11.5 osgiArch x86_64严重性未知

     

------- BUNDLES   -------名称org.eclipse.core.jobs版本3.8.0.v20160509-0411

     

名称org.eclipse.pde.build版本
  3.9.200.v20160204-0642

     

名称org.eclipse.pde版本
  3.12.0.v20160606-1100

     

名称org.eclipse.pde.core版本
  3.11.0.v20160510-1223

1 个答案:

答案 0 :(得分:0)

不可否认,我放弃了基于UI的方法来创建构建。相反,我刚刚赶上并学习了基于Tycho的方法来创建可部署的可执行文件 - 尽管它需要对项目配置进行一些调整。

良好的初学者教程: https://simplejavablog.eu/2016/03/22/eclipse-rcp-part-1/