private static void updateModules(@NotNull Project project, @NotNull Library lib, boolean remove) { Module[] modules = ModuleManager.getInstance(project).getModules(); for (Module module : modules) { ModifiableRootModel model = ModuleRootManager.getInstance(module).getModifiableModel(); if (!remove) { if (model.findLibraryOrderEntry(lib) == null) { LibraryOrderEntry entry = model.addLibraryEntry(lib); entry.setScope(DependencyScope.PROVIDED); } } else { LibraryOrderEntry entry = model.findLibraryOrderEntry(lib); if (entry != null) { model.removeOrderEntry(entry); } } model.commit(); } }
private static void updateModules(@NotNull Project project, @NotNull Library lib, boolean remove) { Module[] modules = ModuleManager.getInstance(project).getModules(); for (Module module : modules) { ModifiableRootModel model = ModuleRootManager.getInstance(module).getModifiableModel(); if (!remove) { if (model.findLibraryOrderEntry(lib) == null) { LibraryOrderEntry entry = model.addLibraryEntry(lib); entry.setScope(DependencyScope.PROVIDED); } } else { LibraryOrderEntry entry = model.findLibraryOrderEntry(lib); if (entry != null) { model.removeOrderEntry(entry); } } model.commit(); } }
private void setLibraryEntryScope( @NotNull final ModifiableRootModel modifiableRootModel, @NotNull final Library library, @NotNull DependencyScope scope ) { final LibraryOrderEntry entry = findOrderEntryForLibrary(modifiableRootModel, library); if (entry != null) { entry.setScope(scope); } }
@Override public void addDevServerToModuleDependencies(@NotNull ModifiableRootModel rootModel) { final ApplicationServer appServer = getOrCreateAppServer(); if (appServer != null && !appServer.isDisposed()) { rootModel.addLibraryEntry(appServer.getLibrary()).setScope(DependencyScope.PROVIDED); } }
@Override protected void run(@NotNull Result result) throws Throwable { if (librariesToAdd != null && !librariesToAdd.isEmpty()) { for (AppEngineStandardMavenLibrary libraryToAdd : librariesToAdd) { Library mavenLibrary = MavenRepositoryLibraryDownloader.getInstance() .downloadLibrary(module, libraryToAdd); if (mavenLibrary != null) { rootModel.addLibraryEntry(mavenLibrary).setScope(libraryToAdd.getScope()); AppEngineStandardWebIntegration.getInstance() .addLibraryToArtifact(mavenLibrary, webArtifact, module.getProject()); UsageTrackerService.getInstance() .trackEvent(GctTracking.APP_ENGINE_ADD_LIBRARY) .addMetadata(GctTracking.METADATA_LABEL_KEY, libraryToAdd.name()) .ping(); } else { LOG.warn("Failed to load library: " + libraryToAdd.getDisplayName()); } } } } }.execute();