0

Graphviz と GEF4 フレームワークを使用して単純なグラフを表示するために、この Java コードを作成しました。重要なのは、Eclipse でも Window Builder を使用していることです。SWT/JFace Java プロジェクトを作成し、それを Plug-in プロジェクトに変換しました。

import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.SWT;
import org.eclipse.gef4.dot.DotImport;
import org.eclipse.gef4.graph.*;
import org.eclipse.gef4.zest.fx.*;
import org.eclipse.gef4.layout.*;
import org.eclipse.gef4.layout.algorithms.*;


public class Code1 {

  public static void main(String[] args) {
    Display display = Display.getDefault();
    Shell shell = new Shell();
    shell.setSize(450, 300);
    shell.setText("SWT Application");
    shell.setLayout(null);


            Graph.Builder graph2 = new Graph.Builder().attr(ZestProperties.GRAPH_LAYOUT, new SpringLayoutAlgorithm());
            new DotImport("digraph{1->2}").into(graph2);
            new DotImport("node[label=zested]; 2->3; 2->4").into(graph2);
            new DotImport("edge[style=dashed]; 3->5; 4->6").into(graph2);
            //SpringLayoutAlgorithm SLA= new SpringLayoutAlgorithm(); 
            graph2.build();


    shell.open();
    shell.layout();
    while (!shell.isDisposed()) {
        if (!display.readAndDispatch()) {
            display.sleep();
        }
    }
  }
}

エラーがあります:

Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/emf/ecore/resource/ResourceSet
at org.eclipse.gef4.dot.DotImport.load(DotImport.java:81)
at org.eclipse.gef4.dot.DotImport.loadFrom(DotImport.java:63)
at org.eclipse.gef4.dot.DotImport.init(DotImport.java:55)
at org.eclipse.gef4.dot.DotImport.<init>(DotImport.java:46)
at program2.Code2.main(Code2.java:24)
Caused by: java.lang.ClassNotFoundException:  org.eclipse.emf.ecore.resource.ResourceSet
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 5 more

Build Path にビルド パス (必要なライブラリを含む jar ファイル) を追加する必要があることがわかりました。だから私は追加しました。すべての依存関係も追加しました。しかし、それでもうまくいきません。何を見逃す可能性がありますか?アイデアをありがとう!

4

1 に答える 1

0

org.eclipse.emf.ecore.resource.ResourceSet lib を見つけて、ファイル jar を elipse に追加する必要があります。

于 2016-07-04T19:54:33.117 に答える