Ich lerne rcp Entwicklung, und derzeit versuche ich einige SWT Widgets in eine e4 RCP App zu importieren, aber ich habe Probleme.Hinzufügen von Gläsern in einer RCP-App über ein externes Eclipse-Projekt
Ich habe Gläser für die XYGraph-Komponente here gefunden, und aus dem Tutorial von Lars Vogel, habe ich gelernt, einige Gläser in einer RCP-App zu importieren: Ich habe ein "Projekt aus Gläsern" in Eclipse, in dem ich alle Gläser gesetzt (nicht nur die oben genannten, sondern auch andere aus dem Nebelprojekt, aber es hängt nicht mit dem Problem zusammen, das ich bekomme). dann habe ich das Plugin-Projekt mit den Gläsern in der Manifest-Datei meiner RCP-App (auf der Registerkarte Abhängigkeiten) hinzugefügt. Danach habe ich die richtigen "Import" -Anweisungen in meine Teildatei hinzugefügt, und alles sollte gut sein ... aber ich erhalte diesen Fehler beim Start der RCP-App (aus der Produktdatei): java.lang.NoClassDefFoundError: org/eclipse/Draw2d/IFigure an der Linie 51
hier ist mir RCP @PostConstruct Datei: ein Pfeil zeigt die Linie 51
@PostConstruct
public void postConstruct(Composite parent) {
parent.setLayout(new FillLayout(SWT.HORIZONTAL));
Canvas canvas = new Canvas(parent, SWT.NONE);
LightweightSystem lws = new LightweightSystem(canvas);
// create a new XY Graph.
XYGraph xyGraph = new XYGraph(); <---- line 51
xyGraph.setTitle("Simple Example");
// set it as the content of LightwightSystem
lws.setContents(xyGraph);
// create a trace data provider, which will provide the data to the
// trace.
CircularBufferDataProvider traceDataProvider = new CircularBufferDataProvider(
false);
traceDataProvider.setBufferSize(100);
traceDataProvider.setCurrentXDataArray(new double[] { 10, 23, 34, 45,
56, 78, 88, 99 });
traceDataProvider.setCurrentYDataArray(new double[] { 11, 44, 55, 45,
88, 98, 52, 23 });
// create the trace
Trace trace = new Trace("Trace1-XY Plot", xyGraph.primaryXAxis,
xyGraph.primaryYAxis, traceDataProvider);
// set trace property
trace.setPointStyle(PointStyle.XCROSS);
// add the trace to xyGraph
xyGraph.addTrace(trace);
}
haben Sie eine Vorstellung über den Ursprung dieser Fehler haben?
EDIT: hier sind alle vier Dateien:
NebulaJars (jars plugin): MANIFEST.MF
https://paste.ofcode.org/mchNUQdCpGde3Tf2yKp8Qr
NebulaJars (jars plugin): build.properties
https://paste.ofcode.org/J6UHffTrjvGfWvHSqunQks
RCP project:
MANIFEST.MF
https://paste.ofcode.org/hR7ZkU85qXAqBPjTam53nV
build.properties
https://paste.ofcode.org/DWEc8SV9U85rHMKk4Eb9X3
Haben Sie hinzugefügt, um das Plugin diese Gläser auf Ihre Plugins Abhängigkeiten enthalten? Haben Sie die Pakete im Plugin mit den Gläsern exportiert? Zeige uns die MANIFEST.MF und build.properties für beide Plugins. –