if (kind != IncrementalProjectBuilder.FULL_BUILD && resource instanceof IFile
&& resource.getName().endsWith(JdtUtils.JAVA_FILE_EXTENSION)) {
// Make sure that only a structural change to a java source file triggers a rebuild
TypeStructureState structureState = context.get(TypeStructureState.class);
BeansTypeHierachyState hierachyState = context.get(BeansTypeHierachyState.class);
if (structureState == null
|| structureState.hasStructuralChanges(resource, ITypeStructureCache.FLAG_ANNOTATION
| ITypeStructureCache.FLAG_ANNOTATION_VALUE)) {
for (IBean bean : hierachyState.getBeansByContainingTypes(resource)) {
IBeansConfig beansConfig = BeansModelUtils.getConfig(bean);
resources.add(beansConfig.getElementResource());
if (affectedBeans.containsKey(beansConfig)) {