Java中的Graphviz、GEF4和构建路径
我编写这段java代码是为了使用Graphviz和GEF4框架显示一个简单的图形。重要的是,我也在Eclipse中使用WindowBuilder。我创建了SWT/JFace Java项目,然后将其转换为插件项目Java中的Graphviz、GEF4和构建路径,java,graphviz,dot,zest,Java,Graphviz,Dot,Zest,我编写这段java代码是为了使用Graphviz和GEF4框架显示一个简单的图形。重要的是,我也在Eclipse中使用WindowBuilder。我创建了SWT/JFace Java项目,然后将其转换为插件项目 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.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
线程“main”java.lang.NoClassDefFoundError中的异常:org/eclipse/emf/ecore/resource/ResourceSet
在org.eclipse.gef4.dot.DotImport.load(DotImport.java:81)上
在org.eclipse.gef4.dot.DotImport.loadFrom(DotImport.java:63)上
位于org.eclipse.gef4.dot.DotImport.init(DotImport.java:55)
位于org.eclipse.gef4.dot.DotImport。(DotImport.java:46)
位于program2.Code2.main(Code2.java:24)
原因:java.lang.ClassNotFoundException:org.eclipse.emf.ecore.resource.ResourceSet
位于java.net.URLClassLoader.findClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
位于sun.misc.Launcher$AppClassLoader.loadClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
... 还有5个
我发现我需要在构建路径中添加构建路径(包含所需库的jar文件)。所以我补充说。我还添加了所有依赖项。但它仍然不起作用。你知道我会错过什么吗?谢谢你的任何想法 您应该找到org.eclipse.emf.ecore.resource.ResourceSet lib并将jar文件添加到elipse。如果有任何想法和提示,我将不胜感激!非常感谢。