尝试在Eclipse外部使用资源/项目时,Workspace关闭错误

时间:2012-10-09 02:22:52

标签: java eclipse abstract-syntax-tree eclipse-jdt

我正在使用Eclipse ast / jdt,正如本文中所解释的那样 - How can I use the java Eclipse Abstract Syntax Tree in a project outside Eclipse? (ie not an eclipse plugin)

问题是,当我尝试使用resolveBinding()时,我总是变为空,这是因为没有使用setProject(IJavaProject) or setEnvironment(String[], String[], String[], boolean),正如此帖中所写 - VariableDeclarationFragment node resolveBindind() returns null in eclipse/jdt/ast

解决返回的null问题,我尝试使用代码,但最终收到错误Workspace is closed

可能出现什么问题?

enter image description here

我的工作区中有.project文件

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>AstRewrite4</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
        <buildCommand>
            <name>org.eclipse.jdt.core.javabuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>org.eclipse.jdt.core.javanature</nature>
    </natures>
</projectDescription>

1 个答案:

答案 0 :(得分:2)

您不在Plug-In / Bundle Runtime中,因此org.eclipse.core.resources插件未“启动”。然后只会初始化工作区和关联对象。你必须自己调用ResourcesPlugin上的start()方法 - 不是说我承诺会解决所有问题,或者那不会给你带来其他问题。