2017-07-19 9 views
1

複数のエッジがある場合、2つのノードに2つのエッジを表示するように取り組んでいます。 私はこれに従いますexampleグラフストリームでのマルチグラフの例外

Exception in thread "main" java.lang.NoClassDefFoundError: scala/collection/convert/WrapAsScala at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:264) at org.graphstream.ui.view.Viewer.newGraphRenderer(Viewer.java:349) at org.graphstream.graph.implementations.AbstractGraph.display(AbstractGraph.java:753) at org.graphstream.graph.implementations.AbstractGraph.display(AbstractGraph.java:747) at com.h2Database.app.ahd.main(ahd.java:18) Caused by: java.lang.ClassNotFoundException: scala.collection.convert.WrapAsScala at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 6 more

私のコードは次のとおりです:

import org.graphstream.graph.*; 
import org.graphstream.graph.implementations.*; 
import org.graphstream.ui.view.Viewer; 

public class ahd { 
    public static void main(String args[]) { 
     Graph graph = new MultiGraph("Test"); 
     System.setProperty("org.graphstream.ui.renderer", "org.graphstream.ui.j2dviewer.J2DGraphRenderer"); 
     graph.addNode("A"); 
     graph.addNode("B"); 

     graph.addEdge("1", "A", "B", true); 
     graph.addEdge("2", "A", "B", true); 

     Viewer viewer = graph.display(); 
    } 
} 

すべてのアイデア、なぜ私はこれを直面していますが、私は例外が直面しているのですか?与えられた例では、この問題は解決されているようです。

+0

使用している 'gs-core'と' gs-ui'のバージョンを指定してください。 – Yoann

+0

@Yoann 1.3、最新バージョン –

答えて

1

GraphStream V1.3 ファイル:

 
$ ls -1 lib/*1.3.jar 
lib/gs-algo-1.3.jar 
lib/gs-core-1.3.jar 
lib/gs-ui-1.3.jar 

J2DGraphRendererとその内部クラスがgs-ui-1.3.jarに見いだすことができる:

 
$ jar tf lib/gs-ui-1.3.jar | grep org.graphstream.ui.j2dviewer.J2DGraphRenderer 
org/graphstream/ui/j2dviewer/J2DGraphRenderer$$anonfun$render$2.class 
org/graphstream/ui/j2dviewer/J2DGraphRenderer.class 
org/graphstream/ui/j2dviewer/J2DGraphRenderer$.class 
org/graphstream/ui/j2dviewer/J2DGraphRenderer$$anonfun$render$2$$anonfun$apply$1.class 
org/graphstream/ui/j2dviewer/J2DGraphRenderer$$anonfun$removeRenderers$1.class 
org/graphstream/ui/j2dviewer/J2DGraphRenderer$$anonfun$render$1.class 
org/graphstream/ui/j2dviewer/J2DGraphRenderer$$anonfun$removeRenderers$3.class 
org/graphstream/ui/j2dviewer/J2DGraphRenderer$$anonfun$removeRenderers$2.class 

gs-ui-1.3.jarは、実行時にクラスパスにあることを確認します

 
$ javac -cp .:lib/* ahd.java 
$ java -cp .:lib/* ahd 

image

classpath syntax is OS-dependentに注意してください。

関連する問題