1

The Eclipse Graphical Editing Framework ( GEF )を使用して Eclipse プラグイン プロジェクトを構築しています。インターネットで見つけたサンプルコードを使用して、テスト用に単一のクラスを作成しても問題ありません。コードは次のとおりです。

public class Test {
    public static void main(String args[]){
        Shell shell = new Shell(); 
        shell.open();
        Display display = shell.getDisplay();
        LightweightSystem lws = new LightweightSystem(shell);
        IFigure panel = new Figure();
        lws.setContents(panel);
        RectangleFigure node1 = new RectangleFigure();
        RectangleFigure node2 = new RectangleFigure();
        node1.setBackgroundColor(ColorConstants.red);
        node1.setBounds(new Rectangle(30, 30, 64, 36));
        node2.setBackgroundColor(ColorConstants.blue);
        node2.setBounds(new Rectangle(300, 300, 64, 36));
        PolylineConnection conn = new PolylineConnection();
        conn.setSourceAnchor(new ChopboxAnchor(node1));
        conn.setTargetAnchor(new ChopboxAnchor(node2));
        conn.setTargetDecoration(new PolygonDecoration());
        Label label = new Label("Midpoint");
        label.setOpaque(true);
        label.setBackgroundColor(ColorConstants.buttonLightest);
        label.setBorder(new LineBorder());
        conn.add(label, new MidpointLocator(conn, 0));
        panel.add(node1);
        panel.add(node2);
        panel.add(conn);
        while (!shell.isDisposed ()) { 
            if (!display.readAndDispatch ()) 
               display.sleep (); 
        }
    }//main
}

できます。

しかし- EditorPart ( org.eclipse.ui.IEditorPart) インスタンス クラスで図を作成しようとすると、エラーが発生し、次のエラー コードが表示されます。

**org.eclipse.e4.core.di.InjectionException: java.lang.NoClassDefFoundError:** org/eclipse/draw2d/LightweightSystem

エディターのcreatePartControlメソッドで 3 行だけ書いているので、かなり奇妙です。

Shell shell = parent.getShell();
Display display = shell.getDisplay();
LightweightSystem lws = new LightweightSystem(shell);

それで、体の助けはありますか?

4

1 に答える 1

0

依存関係は適切に設定されていますか? 用にorg.eclipse.draw2dを追加する必要がありLightweightSystemます。

于 2013-01-21T21:55:28.287 に答える