2014-01-15 88 views
5

我使用Eclipse 4.3.0開發插件/ RCP。 在插件開發101,第2部分:Chris Aniszczyk 2008引入富客戶端應用程序http://www.ibm.com/developerworks/library/os-eclipse-plugindev2/時,嘗試執行RCP產品時,從.product概述選項卡中單擊Launch an Eclipse application時出現以下錯誤。Eclipse RCP java.lang.ClassNotFoundException:org.eclipse.core.runtime.adaptor.EclipseStarter

!SESSION Wed Jan 15 13:06:51 CST 2014 ------------------------------------------ 
!ENTRY org.eclipse.equinox.launcher 4 0 2014-01-15 13:06:51.085 
!MESSAGE Exception launching the Eclipse Platform: 
!STACK 
java.lang.ClassNotFoundException: org.eclipse.core.runtime.adaptor.EclipseStarter 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:633) 
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591) 
    at org.eclipse.equinox.launcher.Main.run(Main.java:1450) 
    at org.eclipse.equinox.launcher.Main.main(Main.java:1426) 

更多信息

注:有在Use existing product沒有rcp.product選項(我認爲這是在教程中明確的錯誤)

plugin.xml內容

<?xml version="1.0" encoding="UTF-8"?> 
<?eclipse version="3.4"?> 
<plugin> 

    <extension 
     id="application" 
     point="org.eclipse.core.runtime.applications"> 
     <application> 
     <run 
       class="rcp4.Application"> 
     </run> 
     </application> 
    </extension> 
    <extension 
     point="org.eclipse.ui.perspectives"> 
     <perspective 
      name="Perspective" 
      class="rcp4.Perspective" 
      id="rcp4.perspective"> 
     </perspective> 
    </extension> 
    <extension 
     point="org.eclipse.ui.views"> 
     <view 
      name="View" 
      class="rcp4.View" 
      id="rcp4.view"> 
     </view> 
    </extension> 
    <extension 
     point="org.eclipse.ui.perspectiveExtensions"> 
     <perspectiveExtension 
      targetID="*"> 
     <view 
       standalone="true" 
       minimized="false" 
       relative="org.eclipse.ui.editorss" 
       relationship="left" 
       id="rcp4.view"> 
     </view> 
     </perspectiveExtension> 
    </extension> 
    <extension 
     point="org.eclipse.ui.menus"> 
     <menuContribution 
      locationURI="menu:org.eclipse.ui.main.menu"> 
     <menu 
       label="File"> 
      <command 
        commandId="org.eclipse.ui.file.exit" 
        label="Exit"> 
      </command> 
     </menu> 
     </menuContribution> 
    </extension> 
    <extension 
     id="product" 
     point="org.eclipse.core.runtime.products"> 
     <product 
      application="rcp4.application" 
      name="RCP4 Product Name"> 
     <property 
       name="appName" 
       value="RCP4 Product Name"> 
     </property> 
     </product> 
    </extension> 

</plugin> 

rcp.product content

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

<product name="RCP4 Product Name" uid="id" id="rcp4.product" application="rcp4.application" version="0.4.0" useFeatures="false" includeLaunchers="true"> 

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

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

    <plugins> 
    </plugins> 


</product> 

回答

6

如果您使用.product文件,則必須在Dependencies選項卡上添加所有插件或功能依賴項。您的rcp.product文件目前沒有相關性,因此無法找到任何內容!該選項卡上有一個Add Required按鈕,該按鈕應添加所需的所有內容。

注意:該教程看起來像使用的產品文件的舊版本與配置選項卡上存在依賴關係。

更新: 要想獲得正確的依賴關係,首先添加自己的插件,然後按Add Required,這將添加很多額外的插件。對於基於Eclipse 4.3.1非常相似的插件(使用不同的名稱),我得到:

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

<product application="TestRCPView.application" useFeatures="false" includeLaunchers="true"> 

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

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

    <plugins> 
     <plugin id="TestRCPView"/> 
     <plugin id="com.ibm.icu"/> 
     <plugin id="javax.annotation"/> 
     <plugin id="javax.inject"/> 
     <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.eclipse.core.commands"/> 
     <plugin id="org.eclipse.core.contenttype"/> 
     <plugin id="org.eclipse.core.databinding"/> 
     <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.jobs"/> 
     <plugin id="org.eclipse.core.runtime"/> 
     <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/> 
     <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.extensions"/> 
     <plugin id="org.eclipse.e4.core.services"/> 
     <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.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.common"/> 
     <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.osgi"/> 
     <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.ui"/> 
     <plugin id="org.eclipse.ui.workbench"/> 
     <plugin id="org.w3c.css.sac"/> 
     <plugin id="org.w3c.dom.smil"/> 
     <plugin id="org.w3c.dom.svg"/> 
    </plugins> 

</product> 
+0

我試過'org.eclipse.core.run.time','org.eclipse.ui'有或沒有'rcp4'插件,或者只有'rcp4' - 和以前一樣。 :-( –

+0

添加了更多詳細信息和示例 –

+2

+25這些教程缺乏這些內容:它最終應該如何看待。 –

0
apt autoremove eclipse* --purge 
apt autoremove libosgi* --purge 

如果你有,那麼也刪除此英國媒體報道:

apt autoremove libmaven* --purge 
apt autoremove libsisu* --purge 

然後再安裝回:

apt install eclipse-cdt 

您還將獲得C++索引器。