Collection<String> (Project project) { insideGettingRoots = true; try { Set<String> roots = CollectionFactory.createSmallMemoryFootprintSet(); OrderEnumerator enumerator = ProjectRootManager.getInstance(project).orderEntries().using(new DefaultModulesProvider(project)); ContainerUtil.addAll(roots, enumerator.classes().getUrls()); ContainerUtil.addAll(roots, enumerator.sources().getUrls()); return roots; } finally { insideGettingRoots = false; } }