List of usage examples for org.apache.maven.settings.building DefaultSettingsBuilderFactory newInstance
public DefaultSettingsBuilder newInstance()
From source file:com.redhat.ceylon.cmr.resolver.aether.AetherResolverImpl.java
License:Apache License
private List<RemoteRepository> configureSession(RepositorySystem system, DefaultRepositorySystemSession session) { DefaultSettingsBuilderFactory factory = new DefaultSettingsBuilderFactory(); DefaultSettingsBuilder builder = factory.newInstance(); SettingsBuildingRequest settingsBuilderRequest = new DefaultSettingsBuildingRequest(); settingsBuilderRequest.setSystemProperties(System.getProperties()); // find the settings String settingsFile = settingsXml; if (settingsFile == null) { File userSettings = new File(System.getProperty("user.home"), ".m2/settings.xml"); if (userSettings.exists()) settingsFile = userSettings.getAbsolutePath(); }// ww w . j av a 2 s. c o m if (settingsFile != null) { settingsBuilderRequest.setUserSettingsFile(new File(settingsXml)); } // read it SettingsBuildingResult settingsBuildingResult; try { settingsBuildingResult = builder.build(settingsBuilderRequest); } catch (SettingsBuildingException e) { throw new RuntimeException(e); } Settings set = settingsBuildingResult.getEffectiveSettings(); // configure the local repo String localRepository = set.getLocalRepository(); if (localRepository == null) localRepository = System.getProperty("user.home") + File.separator + ".m2" + File.separator + "repository"; else { if (!new File(localRepository).isAbsolute() && currentDirectory != null) { localRepository = new File(new File(currentDirectory), localRepository).getAbsolutePath(); } } // set up authentication DefaultAuthenticationSelector authenticationSelector = new DefaultAuthenticationSelector(); for (Server server : set.getServers()) { AuthenticationBuilder auth = new AuthenticationBuilder(); if (server.getUsername() != null) auth.addUsername(server.getUsername()); if (server.getPassword() != null) auth.addPassword(server.getPassword()); if (server.getPrivateKey() != null) auth.addPrivateKey(server.getPrivateKey(), server.getPassphrase()); authenticationSelector.add(server.getId(), auth.build()); } session.setAuthenticationSelector(authenticationSelector); // set up mirrors DefaultMirrorSelector mirrorSelector = new DefaultMirrorSelector(); for (Mirror mirror : set.getMirrors()) { mirrorSelector.add(mirror.getId(), mirror.getUrl(), mirror.getLayout(), false, mirror.getMirrorOf(), mirror.getMirrorOfLayouts()); } session.setMirrorSelector(mirrorSelector); // set up proxies DefaultProxySelector proxySelector = new DefaultProxySelector(); for (Proxy proxy : set.getProxies()) { if (proxy.isActive()) { AuthenticationBuilder auth = new AuthenticationBuilder(); if (proxy.getUsername() != null) auth.addUsername(proxy.getUsername()); if (proxy.getPassword() != null) auth.addPassword(proxy.getPassword()); org.eclipse.aether.repository.Proxy p = new org.eclipse.aether.repository.Proxy(proxy.getProtocol(), proxy.getHost(), proxy.getPort(), auth.build()); proxySelector.add(p, proxy.getNonProxyHosts()); } } session.setProxySelector(proxySelector); // set up remote repos List<RemoteRepository> repos = new ArrayList<>(); RemoteRepository central = new RemoteRepository.Builder("central", "default", "http://repo1.maven.org/maven2/").build(); repos.add(central); Set<String> activeProfiles = new HashSet<>(); activeProfiles.addAll(set.getActiveProfiles()); for (Profile profile : set.getProfiles()) { Activation activation = profile.getActivation(); if (activation != null) { if (activation.isActiveByDefault()) activeProfiles.add(profile.getId()); } } for (String profileId : activeProfiles) { Profile profile = set.getProfilesAsMap().get(profileId); if (profile != null) { addReposFromProfile(repos, profile); } } // connection settings session.setConfigProperty(ConfigurationProperties.CONNECT_TIMEOUT, timeout); session.setOffline(offline || set.isOffline()); LocalRepository localRepo = new LocalRepository(localRepository); session.setLocalRepositoryManager(system.newLocalRepositoryManager(session, localRepo)); return repos; }
From source file:com.rhox.maven.MavenSettings.java
public static MavenSettings getDefault() { String envMavenHome = System.getenv("M2_HOME"); File userSettings = new File(USER_MAVEN_HOME, "settings.xml"); File globalSettings = new File(System.getProperty("maven.home", envMavenHome != null ? envMavenHome : ""), "conf/settings.xml"); SettingsBuildingRequest settingsBuildingRequest = new DefaultSettingsBuildingRequest(); settingsBuildingRequest.setSystemProperties(System.getProperties()); settingsBuildingRequest.setUserSettingsFile(userSettings); settingsBuildingRequest.setGlobalSettingsFile(globalSettings); DefaultSettingsBuilderFactory mvnSettingBuilderFactory = new DefaultSettingsBuilderFactory(); DefaultSettingsBuilder settingsBuilder = mvnSettingBuilderFactory.newInstance(); Settings settings;/* w w w . java 2 s .c o m*/ try { SettingsBuildingResult settingsBuildingResult = settingsBuilder.build(settingsBuildingRequest); settings = settingsBuildingResult.getEffectiveSettings(); } catch (SettingsBuildingException unexpected) { throw new IllegalStateException(unexpected); } return new MavenSettings(settings); }
From source file:io.fabric8.maven.util.MavenConfigurationImpl.java
License:Apache License
private Settings buildSettings(String localRepoPath, String settingsPath, boolean useFallbackRepositories) { Settings settings;/*ww w . j a va 2 s .c o m*/ if (settingsPath == null) { settings = new Settings(); } else { DefaultSettingsBuilderFactory factory = new DefaultSettingsBuilderFactory(); DefaultSettingsBuilder builder = factory.newInstance(); SettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); request.setUserSettingsFile(new File(settingsPath)); try { SettingsBuildingResult result = builder.build(request); settings = result.getEffectiveSettings(); } catch (SettingsBuildingException exc) { throw new AssertionError("cannot build settings", exc); } } if (useFallbackRepositories) { Profile fallbackProfile = new Profile(); Repository central = new Repository(); central.setId("central"); central.setUrl("http://repo1.maven.org/maven2"); fallbackProfile.setId("fallback"); fallbackProfile.setRepositories(Arrays.asList(central)); settings.addProfile(fallbackProfile); settings.addActiveProfile("fallback"); } if (localRepoPath != null) { settings.setLocalRepository(localRepoPath); } return settings; }
From source file:net.linguica.gradle.maven.settings.LocalMavenSettingsLoader.java
License:Apache License
/** * Loads and merges Maven settings from global and local user configuration files. Returned * {@link org.apache.maven.settings.Settings} object includes decrypted credentials. * * @return Effective settings//from w w w.j av a 2 s . c o m * @throws SettingsBuildingException If the effective settings cannot be built */ public Settings loadSettings() throws SettingsBuildingException { SettingsBuildingRequest settingsBuildingRequest = new DefaultSettingsBuildingRequest(); settingsBuildingRequest.setUserSettingsFile(extension.getUserSettingsFile()); settingsBuildingRequest.setGlobalSettingsFile(GLOBAL_SETTINGS_FILE); settingsBuildingRequest.setSystemProperties(System.getProperties()); DefaultSettingsBuilderFactory factory = new DefaultSettingsBuilderFactory(); DefaultSettingsBuilder settingsBuilder = factory.newInstance(); SettingsBuildingResult settingsBuildingResult = settingsBuilder.build(settingsBuildingRequest); Settings settings = settingsBuildingResult.getEffectiveSettings(); decryptCredentials(settings); return settings; }
From source file:org.apache.karaf.maven.command.MavenConfigurationSupport.java
License:Apache License
/** * Reads on demand <code>settings.xml</code> file - without password decryption. Also * collects declared servers by ID.// w ww . j a v a 2s . c o m * @param settingsFile */ protected synchronized Settings readSettings(File settingsFile) throws SettingsBuildingException { if (!settingsFile.isFile() || !settingsFile.canRead()) { return null; } try { DefaultSettingsBuilderFactory factory = new DefaultSettingsBuilderFactory(); DefaultSettingsBuilder builder = factory.newInstance(); SettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); request.setUserSettingsFile(settingsFile); SettingsBuildingResult result = builder.build(request); if (result.getProblems().size() > 0) { for (SettingsProblem problem : result.getProblems()) { System.err.println(problem); } return null; } else { Settings settings = result.getEffectiveSettings(); if (settings.getServers() != null) { for (Server server : settings.getServers()) { servers.put(server.getId(), server); } } return settings; } } catch (Throwable e) { System.err.println(e.getMessage()); LOG.error(e.getMessage(), e); throw e; } }
From source file:org.ops4j.pax.url.mvn.internal.config.MavenConfigurationImpl.java
License:Apache License
private Settings buildSettings(String localRepoPath, String settingsPath, boolean useFallbackRepositories) { Settings settings;//from w w w .ja v a 2 s . co m if (settingsPath == null) { settings = new Settings(); } else { DefaultSettingsBuilderFactory factory = new DefaultSettingsBuilderFactory(); DefaultSettingsBuilder builder = factory.newInstance(); SettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); request.setUserSettingsFile(new File(settingsPath)); try { SettingsBuildingResult result = builder.build(request); settings = result.getEffectiveSettings(); } catch (SettingsBuildingException exc) { throw new AssertionError("cannot build settings", exc); } } if (useFallbackRepositories) { Profile fallbackProfile = new Profile(); Repository central = new Repository(); central.setId("central"); central.setUrl("https://repo1.maven.org/maven2"); fallbackProfile.setId("fallback"); fallbackProfile.setRepositories(Arrays.asList(central)); settings.addProfile(fallbackProfile); settings.addActiveProfile("fallback"); } if (localRepoPath != null) { settings.setLocalRepository(localRepoPath); } return settings; }
From source file:org.ops4j.pax.url.mvn.UnitHelp.java
License:Apache License
/** * Load settings.xml file and apply custom properties. *///from w w w . j av a2s . c om public static MavenConfiguration getConfig(final File settingsFile, final Properties props) { props.setProperty(ServiceConstants.PID + "." + ServiceConstants.PROPERTY_SETTINGS_FILE, settingsFile.toURI().toASCIIString()); PropertiesPropertyResolver propertiesPropertyResolver = new PropertiesPropertyResolver(props); final MavenConfigurationImpl config = new MavenConfigurationImpl(propertiesPropertyResolver, ServiceConstants.PID); DefaultSettingsBuilderFactory factory = new DefaultSettingsBuilderFactory(); DefaultSettingsBuilder builder = factory.newInstance(); SettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); request.setUserSettingsFile(settingsFile); Settings settings; try { SettingsBuildingResult result = builder.build(request); settings = result.getEffectiveSettings(); config.setSettings(settings); } catch (SettingsBuildingException exc) { throw new AssertionError("cannot build settings", exc); } String localRepo = props .getProperty(ServiceConstants.PID + "." + ServiceConstants.PROPERTY_LOCAL_REPOSITORY); if (localRepo != null) { settings.setLocalRepository(localRepo); } return config; }
From source file:org.tawja.maven.discovery.util.Booter.java
License:Apache License
public static Settings getEffectiveSettings() { SettingsBuildingRequest settingsBuildingRequest = new DefaultSettingsBuildingRequest(); settingsBuildingRequest.setSystemProperties(System.getProperties()); settingsBuildingRequest.setUserSettingsFile(DEFAULT_USER_SETTINGS_FILE); settingsBuildingRequest.setGlobalSettingsFile(DEFAULT_GLOBAL_SETTINGS_FILE); SettingsBuildingResult settingsBuildingResult; DefaultSettingsBuilderFactory mvnSettingBuilderFactory = new DefaultSettingsBuilderFactory(); DefaultSettingsBuilder settingsBuilder = mvnSettingBuilderFactory.newInstance(); Settings effectiveSettings = null;// ww w. j a va 2 s . co m try { settingsBuildingResult = settingsBuilder.build(settingsBuildingRequest); effectiveSettings = settingsBuildingResult.getEffectiveSettings(); /** * Map<String, Profile> profilesMap = * effectiveSettings.getProfilesAsMap(); * Collection<RemoteRepository> remotes = new ArrayList<>(20); for * (String profileName : effectiveSettings.getActiveProfiles()) { * Profile profile = profilesMap.get(profileName); List<Repository> * repositories = profile.getRepositories(); for (Repository repo : * repositories) { RemoteRepository remoteRepo = new * RemoteRepository.Builder(repo.getId(), "default", * repo.getUrl()).build(); * * remotes.add(remoteRepo); } } * */ } catch (Exception ex) { throw new RuntimeException(ex); } return effectiveSettings; }