この投稿で説明されているように、Eclipse ast / jdtを使用しています-Eclipseの外部のプロジェクトでJavaEclipse抽象構文木を使用するにはどうすればよいですか?(つまり、日食プラグインではありません)
問題は、この投稿に書かれているように、を使用しようとすると常にnullになることです。これはresolveBinding()
、を使用していないためです。VariableDeclarationFragmentノードresolveBindind()は、eclipse / jdt/astでnullを返します。setProject(IJavaProject) or setEnvironment(String[], String[], String[], boolean)
返されるnullの問題を解決するために、コードを使用しようとしましたが、エラーが発生しましたWorkspace is closed
。
何が悪いのでしょうか?
ワークスペースに.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>