List<ComponentPackage> packageList = loadCustomComponentsPackageListWithPrefix(res, prefix);
IPackageFragmentRoot[] roots = JavaCore.create(project).getAllPackageFragmentRoots();
for(ComponentPackage cp : packageList){
for (IPackageFragmentRoot root : roots) {
if(cp.isArchive() == root.isArchive() && cp.getFragmentRoot().equals(root.getElementName())){
IPackageFragment packInstance = root.getPackageFragment(cp.getPath());
if (!root.isArchive()){
//If current custom component is in source directory
if(packInstance != null){
IJavaElement[] elements = packInstance.getChildren();
for(IJavaElement ele : elements){
if(ele.getElementType() == IJavaElement.COMPILATION_UNIT && ele.getElementName().endsWith(".java")){
String name = ele.getElementName().substring(0, ele.getElementName().indexOf('.'));
if((prefix + ":" + name).toLowerCase().equals(nodeName)){
goThroughClass((ICompilationUnit) ele, contextTypeId);