private static void removeSourceRoot(@NotNull Module module, @NotNull final VirtualFile root) { final ModifiableRootModel model = ModuleRootManager.getInstance(module).getModifiableModel(); final ContentEntry contentEntry = findContentEntryForRoot(model, root); if (contentEntry != null) { for (SourceFolder sourceFolder : contentEntry.getSourceFolders()) { if (sourceFolder.getFile() == root) { contentEntry.removeSourceFolder(sourceFolder); } } } ApplicationManager.getApplication() .runWriteAction( new Runnable() { @Override public void run() { model.commit(); } }); }