Problem beim Export einer RCP-Applikation aus Eclipse

Entwicklerchen

Grünschnabel
Hallihallo,
Ich hab in den bestehenden Themen keine Antwort gefunden, drum hoffe ich jemand kann mir bei meinem Problemchen helfen.

Plattform: Eclipse 3.2.1
Java Vers.: 5.0 (Compiler Compliance Level)

Ich entwickle gerade ein Plugin bzw. eine RCP-Standalone Applikation. Der Export über den Product-Wizard gelingt, beim ausführen der exportierten Applikation bekomme ich aber eine Fehlermeldung. Hier der Log davon:

Code:
!SESSION 2007-03-13 15:50:21.500 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.6.0-rc
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=de_CH
Command-line arguments:  -os win32 -ws win32 -arch x86

!ENTRY org.eclipse.core.runtime 2007-03-13 15:50:22.218
!MESSAGE Product com.firma.xyz.product could not be found.

!ENTRY org.eclipse.osgi 4 0 2007-03-13 15:50:22.218
!MESSAGE Application error
!STACK 1
java.lang.RuntimeException: No application id has been found.
	at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:56)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
	at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
	at org.eclipse.core.launcher.Main.run(Main.java:977)
	at org.eclipse.core.launcher.Main.main(Main.java:952)

Die Produktdefinition com.firma.xyz.product wurde automatisch erstellt und befindet sich brav im META-INF Ordner. Überhaupt wurden alle Konfigurationsdateien weitgehend von Eclipse selbst erzeugt. Ich habe überall einen Namen angegeben, aber irgendwie scheint da trotzdem was nicht zu stimmen. Etliche Namensänderungen und rebuilds blieben erfolglos :S

Hier sind noch die anderen Dateien:

MANIFEST.MF:
Code:
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: xyz
Bundle-SymbolicName: com.firma.xyz;singleton:=true
Bundle-Version: 1.0.0
Bundle-Activator: com.firma.xyz.Activator
Bundle-Vendor: firma GmbH
Bundle-Localization: plugin
Eclipse-LazyStart: true
Require-Bundle: org.eclipse.ui,
 org.eclipse.core.runtime,
 org.eclipse.ui.forms
Export-Package: com.firma.xyz,
 com.firma.xyz.model,
 com.firma.xyz.page,
 com.firma.xyz.page.composite,
 com.firma.xyz.page.graphics,
 com.firma.xyz.page.phase1,
 com.firma.xyz.view
Bundle-ClassPath: lib/commons-lang-2.2.jar,
 lib/commons-logging-1.1.jar,
 lib/itext-1.4.8.jar,
 lib/log4j-1.2.14.jar,
 .,
 lib/itext-hyph-xml-1.0.0.jar,
 lib/xyz-Reporting-1.0.0.jar

plugin.xml:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="xyz"
   name="firma.xyz"
   version="1.0"
   provider-name="firma">
	
   <extension
         id="application"
         name="xyz - Risk Self Analysis"
         point="org.eclipse.core.runtime.applications">
      <application>
         <run
               class="com.firma.xyz.Application">
         </run>
      </application>
   </extension>
   <extension
         point="org.eclipse.ui.perspectives">
      <perspective
            name="Perspective"
            class="com.firma.xyz.Perspective"
            id="com.firma.xyz.perspective">
      </perspective>
   </extension>
   <extension
         point="org.eclipse.ui.views">
      <view
            name="FormView"
            class="com.firma.xyz.view.FormView"
            id="com.firma.xyz.view.FormView">
      </view>
      <view
            class="com.firma.xyz.VisualEditorRcpView"
            id="com.firma.xyz.VisualEditorRcpView"
            name="com.firma.xyz.VisualEditorRcpView"/>
   </extension>
   <extension
         id="xyz_product"
         point="org.eclipse.core.runtime.products">
      <product
            application="com.firma.xyz.application"
            name="xyz - Risk Self Analysis">
      </product>
   </extension>
   <extension
         id="product"
         point="org.eclipse.core.runtime.products">
      <product
            application="com.firma.xyz.application"
            name="xyz - Risk Self Analysis"/>
   </extension>
</plugin>

build.properties:
Code:
source.. = src/
output.. = bin/
bin.includes = plugin.xml,\
               META-INF/,\
               .,\
               icons/,\
               splash.bmp,\
               plugin.properties,\
               xyz.product,\
               build.properties,\
               lib/commons-lang-2.2.jar,\
               lib/commons-logging-1.1.jar,\
               lib/itext-1.4.8.jar,\
               lib/log4j-1.2.14.jar,\
               bin/,\
               lib/itext-hyph-xml-1.0.0.jar,\
               lib/xyz-Reporting-1.0.0.jar
src.includes = build.properties,\
               META-INF/,\
               icons/,\
               plugin.properties,\
               plugin.xml,\
               xyz.product,\
               splash.bmp,\
               src/

Also wenn irgendjemand ein ähnliches Problem schonmal hatt, wäre ich dankbar für jeden Tip. Ich und jeder den ich zugezogen habe stehen total auf dem Schlauch :S

Vielen Dank im Voraus, tolles Forum :D
 
Hallo,

kann es sein, das wenn Du in auf die MANIFEST.MF klickst, bei dem Reiter Overview nichts bei ID eingeben ist? Wäre jetzt das einzige was mir so eben einfällt, weil ansonsten scheint alles von Deiner Konfiguration her richtig zu sein. :confused:

Gruß KlaDi.

[EDIT] Hab nochmal drüber geschaut...Der findet die Datei nicht: com.firma.xyz.product. Ich denke mal damit hängt es zusammen...Er sucht nach der obigen Datei, Du hast aber nur eine die so heißt: xyz.product. Vielleicht mal irgendwann nen Rename gemacht?
 
Zuletzt bearbeitet:
Danke vielmals dass dus dir angeschaut hast.

Ich hab im MANIFEST und überall ID's angegeben. Es hat keine Fehlenden Einträge in der Übersicht. Die Datei com.firma.xyz.product existiert, aber die Idee mit dem Eintrag im build.properties ist gut, das hatte ich noch nicht probiert.

Ich hab mal die beiden Einträge
Code:
xyz.product,\

in
Code:
com.firma.xyz.product,\
umgeändert, aber es hat nix bewirkt. warscheinlich wird der Präfix cmo.firma sowieso von Eclipse selbst hinzugefügt.

Aber danke für deine Idee
 
Hallo,

existiert in dem configuration Verzeichnis in das die das Product exportiert hast auch eine Datei namens "config.ini" ?

Mit ähnlichem Inhalt?
Code:
#Product Runtime Configuration File

osgi.splashPath=platform:/base/plugins/mailclient
eclipse.product=mailclient.product
osgi.bundles=org.eclipse.equinox.common@2:start,org.eclipse.core.runtime@start,com.ibm.icu,mailclient,org.eclipse.core.commands,org.eclipse.core.contenttype,org.eclipse.core.expressions,org.eclipse.core.jobs,org.eclipse.core.runtime.compatibility.auth,org.eclipse.core.runtime.compatibility.registry,org.eclipse.equinox.preferences,org.eclipse.equinox.registry,org.eclipse.help,org.eclipse.jface,org.eclipse.swt,org.eclipse.swt.win32.win32.x86,org.eclipse.ui,org.eclipse.ui.workbench
osgi.bundles.defaultStartLevel=4

Wenn dort unter eclipse.product die falsche Product ID steht gibts auch den oben genannten Fehler.

Exportier doch einfach mal zum Spaß die mail Client Beispiel RPC Anwendung. Anschließend kannst du die einzelnen Files miteinander vergleichen. So solltest du das Problem ziemlich schnell aufspüren können. (Ansonsten bietet es sich noch an den eclipse Product launcher mal auf der Konsole mit -console zu starten. Es könnte nämlich sein, dass dein Plugin (mit der Application) nicht geladen werden kann weil eine Abhängiges Plugin stress macht...

Gruß Tom
 

Neue Beiträge

Zurück