List of usage examples for org.apache.maven.settings MavenSettingsBuilder buildSettings
Settings buildSettings(File userSettingsFile, boolean useCachedSettings) throws IOException, XmlPullParserException;
From source file:org.jetbrains.maven.embedder.MavenEmbedder.java
License:Apache License
public static Settings buildSettings(PlexusContainer container, MavenEmbedderSettings embedderSettings) { File file = embedderSettings.getGlobalSettingsFile(); if (file != null) { System.setProperty(MavenSettingsBuilder.ALT_GLOBAL_SETTINGS_XML_LOCATION, file.getPath()); }/*from w ww .j a va 2s . c o m*/ Settings settings = null; try { MavenSettingsBuilder builder = (MavenSettingsBuilder) container.lookup(MavenSettingsBuilder.ROLE); File userSettingsFile = embedderSettings.getUserSettingsFile(); if (userSettingsFile != null && userSettingsFile.exists() && !userSettingsFile.isDirectory()) { settings = builder.buildSettings(userSettingsFile, false); } if (settings == null) { settings = builder.buildSettings(); } } catch (ComponentLookupException e) { MavenEmbedderLog.LOG.error(e); } catch (IOException e) { MavenEmbedderLog.LOG.warn(e); } catch (XmlPullParserException e) { MavenEmbedderLog.LOG.warn(e); } if (settings == null) { settings = new Settings(); } if (embedderSettings.getLocalRepository() != null) { settings.setLocalRepository(embedderSettings.getLocalRepository().getPath()); } if (settings.getLocalRepository() == null) { settings.setLocalRepository(System.getProperty("user.home") + "/.m2/repository"); } settings.setOffline(embedderSettings.isWorkOffline()); settings.setInteractiveMode(false); settings.setUsePluginRegistry(embedderSettings.isUsePluginRegistry()); RuntimeInfo runtimeInfo = new RuntimeInfo(settings); runtimeInfo.setPluginUpdateOverride( embedderSettings.getPluginUpdatePolicy() == MavenEmbedderSettings.UpdatePolicy.ALWAYS_UPDATE); settings.setRuntimeInfo(runtimeInfo); return settings; }