1

我在 Eclipse 中构建了一个编辑器部分来可视化 Zest 图表。我的问题:如果我尝试关闭包含大图(~6000 个节点,9000 条边)的编辑器部分,eclipse 无法处理关闭操作并挂断。

有什么想法可以解决问题或调试吗?

我认为问题是要处理图形对象,但我不知道要解决它。

提前致谢!

4

2 回答 2

0

为了调试它,我会尝试查看 Eclipse 日志文件 ( workspace/.metadata/.log) 以获取有关发生情况的线索。这可能是一些内存问题。如果从日志文件中听起来像这样,您可以尝试更改您的eclipse.ini配置,特别是-XX:MaxPermSize-Xms-Xmx值(请参阅http://wiki.eclipse.org/Eclipse.ini)。

如果问题在合理的内存值下仍然存在,如果您可以提交错误,那就太好了:https ://bugs.eclipse.org/bugs/enter_bug.cgi?product=GEF&component=Zest

于 2013-06-30T13:58:26.033 回答
0

问题是方法“org.eclipse.gef4.zest.layouts.algorithms.TreeLayoutObserver.TreeNode.isAncestorO‌​f(TreeNode descendant)”。我为我修复了它,我将报告一个错误(在评论中显示错误 ID)。如果有人需要快速修复错误:

旧版:

    public boolean isAncestorOf(TreeNode descendant) {
        while (descendant.depth > this.depth) {
            descendant = descendant.parent;
        }
        return descendant == this;
    }

新版本:

    public boolean isAncestorOf(TreeNode descendant) {
        while (descendant.depth > this.depth) {
            if (descendant == descendant.parent) {
                return false;
            } else {
                descendant = descendant.parent;
            }
        }
        return descendant == this;
    }
于 2013-07-06T10:29:43.587 回答