yEd Graph Editor 无法打开从 tinkerpop 生成的 Graphml

问题描述

我使用 Tinkergraph API 保存了一个图表。

文件在这里https://pastebin.com/C81rZYa2

我试图使用 yEd 打开文件,但出现以下错误

    at y.H.A.K.ā(UnkNown Source)
    at y.H.H.ā(UnkNown Source)
    at y.H.H.ā(UnkNown Source)
    at y.H.G.ā(UnkNown Source)
    at y.B.A.M.Đ(UnkNown Source)
    at y.B.h.č(UnkNown Source)
    at y.B.h.ā(UnkNown Source)
    at y.B.h.ă(UnkNown Source)
    at com.yworks.A.B.Z.ă(UnkNown Source)
    at com.yworks.A.B.Z.ā(UnkNown Source)
    at com.yworks.A.K.P.ā(UnkNown Source)
    at com.yworks.A.K.P.ā(UnkNown Source)
    at com.yworks.A.K.G.ā(UnkNown Source)
    at com.yworks.A.K.G.ą(UnkNown Source)
    at com.yworks.A.K.P$B.Ă(UnkNown Source)
    at com.yworks.A.K.P.ā(UnkNown Source)
    at com.yworks.A.L.D.ā(UnkNown Source)
    at com.yworks.A.L.j.actionPerformed(UnkNown Source)
    at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
    at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308)
    at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
    at java.desktop/javax.swing.DefaultButtonModel.setpressed(DefaultButtonModel.java:262)
    at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
    at com.jidesoft.plaf.basic.BasicJideButtonListener.mouseReleased(UnkNown Source)
    at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
    at java.desktop/java.awt.Component.processMouseEvent(Component.java:6614)
    at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
    at java.desktop/java.awt.Component.processEvent(Component.java:6379)
    at java.desktop/java.awt.Container.processEvent(Container.java:2263)
    at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4990)
    at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
    at java.desktop/java.awt.Component.dispatchEvent(Component.java:4822)
    at java.desktop/java.awt.Lightweightdispatcher.retargetMouseEvent(Container.java:4919)
    at java.desktop/java.awt.Lightweightdispatcher.processMouseEvent(Container.java:4548)
    at java.desktop/java.awt.Lightweightdispatcher.dispatchEvent(Container.java:4489)
    at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
    at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2769)
    at java.desktop/java.awt.Component.dispatchEvent(Component.java:4822)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
    at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
    at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:391)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
    at java.desktop/java.awt.EventdispatchThread.pumpOneEventForFilters(EventdispatchThread.java:203)
    at java.desktop/java.awt.EventdispatchThread.pumpEventsForFilter(EventdispatchThread.java:124)
    at java.desktop/java.awt.EventdispatchThread.pumpEventsForHierarchy(EventdispatchThread.java:113)
    at java.desktop/java.awt.EventdispatchThread.pumpEvents(EventdispatchThread.java:109)
    at java.desktop/java.awt.EventdispatchThread.pumpEvents(EventdispatchThread.java:101)
    at java.desktop/java.awt.EventdispatchThread.run(EventdispatchThread.java:90)
Caused by: java.io.IOException: ParseException,did not find LETTER,EOF or ] but '<'
    at y.H.A.K.ă(UnkNown Source)
    ... 55 more

yEd 和 Tinkergraph 之间是否存在版本不匹配?我正在使用 tinkerpop 2.6.0,即以下依赖项:

<dependency>
            <groupId>com.tinkerpop.blueprints</groupId>
            <artifactId>blueprints-core</artifactId>
            <version>2.6.0</version>
        </dependency>

解决方法

我认为您的版本不匹配。 Kelvin Lawrence 建议您使用旧版本的 TinkerPop。我想您可能也在使用旧版本的 yEd。

我已使用 yEd v3.21.1 成功打开您的文件,没有任何错误。

节点具有以下自定义属性:

  • 参考
  • 标识符
  • 修饰符
  • 文字
  • 输入
  • 父类型

安装最新版本的 yEd 后,您可能还想创建一个自定义节点来公开部分或全部这些属性,否则无法区分节点。

该图似乎还包含两个循环 - 两个连接到自身的节点。