我正在學習rcp開發,目前我嘗試將一些SWT小部件導入e4 RCP應用程序,但是我遇到了問題。通過外部eclipse項目在RCP應用程序中添加jar
我發現了XYGraph組件here的jar,並且從lars Vogel的教程中,我學會了在RCP應用程序中導入一些jar:我在eclipse中創建了一個「來自jar的項目」,其中我將所有的jar (不僅是上面提到的那些,還有來自星雲項目的其他人,但它與我得到的問題沒有關係)。 然後,我在我的RCP應用程序的清單文件中(在依賴性選項卡中)添加了帶有JAR的插件項目。 之後,我在part文件中添加了正確的「import」語句,並且所有語句都應該很好......但是當我啓動RCP應用程序(從產品文件中)時出現此錯誤: java.lang.NoClassDefFoundError:組織/日蝕/ Draw2D的/ IFigure 在該行51
這裏是我RCP @PostConstruct文件:一個箭頭顯示了線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);
}
你有關於這個錯誤的起源的想法?
編輯: 這裏有所有的4個文件:
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
您是否已將包含這些jar的插件添加到插件的依賴關係中?您是否已將包裝導出到包含罐子的插件中?向我們展示兩個插件的MANIFEST.MF和build.properties。 –