Por que eu não tenho super classes com getAllSuperclasses () na API do JDT?

Eu tenho classe A e classe B que herda A no espaço de trabalho do Eclipse.

O problema que eu tenho é que eu não tenho nada quando eu tentei obter os super tipos de tipo B usando a API do Eclipse JDT. Este é o código (eu peguei o código de -Listar todas as subclasses com nomes completos):

IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
java.io.File workspaceDirectory = root.getLocation().toFile();

// 1. The name of the project in the workspace
IProgressMonitor pm = new NullProgressMonitor();    
IProject orig = root.getProject(this.projectName);
orig.open(pm);
this.javaProject = JavaCore.create(orig);
orig.refreshLocal(IResource.DEPTH_INFINITE, pm);

// 2. Find the type                
IType type = this.javaProject.findType("p.B"); <-- returns correct type info
ITypeHierarchy hier = type.newSupertypeHierarchy(new NullProgressMonitor());
IType[] types = hier.getAllSuperclasses(type);
System.out.println(types); <-- Returns []

Eu também adicionei o código para atualizar / atualizar os recursos no pacote.

IPackageFragmentRoot[] packageFragmentRoots = this.javaProject.getPackageFragmentRoots();
for (IPackageFragmentRoot proot: packageFragmentRoots)
{
    proot.getResource().refreshLocal(IResource.DEPTH_INFINITE, null);
}

Tudo funciona bem, exceto obter as informações do tipo hierárquico. O que pode estar errado? Eu perdi alguma configuração antes de executar a API?

O meu é um aplicativo RCP sem cabeça.

questionAnswers(1)

yourAnswerToTheQuestion