List of usage examples for org.apache.maven.settings.building DefaultSettingsBuildingRequest DefaultSettingsBuildingRequest
DefaultSettingsBuildingRequest
From source file:capsule.UserSettings.java
License:Open Source License
private UserSettings() { final DefaultSettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); request.setUserSettingsFile(DEFAULT_LOCAL_MAVEN.resolve(SETTINGS_XML).toFile()); request.setGlobalSettingsFile(// ww w . j a v a 2s .c o m MAVEN_HOME != null ? MAVEN_HOME.resolve("conf").resolve(SETTINGS_XML).toFile() : null); request.setSystemProperties(getSystemProperties()); try { this.settings = new DefaultSettingsBuilderFactory().newInstance().build(request).getEffectiveSettings(); final SettingsDecryptionResult result = newDefaultSettingsDecrypter() .decrypt(new DefaultSettingsDecryptionRequest(settings)); settings.setServers(result.getServers()); settings.setProxies(result.getProxies()); } catch (SettingsBuildingException e) { throw new RuntimeException(e); } }
From source file:com.github.nethad.clustermeister.provisioning.dependencymanager.MavenRepositorySystem.java
License:Apache License
private Settings buildMavenSettings() { try {//from w w w . ja v a 2 s . c om File settingsXml = new File(new File(System.getProperty("user.home"), ".m2"), "settings.xml"); if (settingsXml.canRead()) { SettingsBuilder settingsBuilder = new DefaultSettingsBuilderFactory().newInstance(); SettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); request.setSystemProperties(System.getProperties()); request.setUserSettingsFile(settingsXml); return settingsBuilder.build(request).getEffectiveSettings(); } } catch (SettingsBuildingException ex) { logger.warn("Could not build settings from user settings.xml.", ex); } return new Settings(); }
From source file:com.google.devtools.build.lib.bazel.repository.MavenServerFunction.java
License:Open Source License
@Nullable @Override//from w w w .j av a 2s. c o m public SkyValue compute(SkyKey skyKey, Environment env) throws InterruptedException, RepositoryFunctionException { String repository = (String) skyKey.argument(); Rule repositoryRule = null; try { repositoryRule = RepositoryFunction.getRule(repository, env); } catch (RepositoryNotFoundException ex) { // Ignored. We throw a new one below. } BlazeDirectories directories = PrecomputedValue.BLAZE_DIRECTORIES.get(env); if (env.valuesMissing()) { return null; } String serverName; String url; Map<String, FileValue> settingsFiles; boolean foundRepoRule = repositoryRule != null && repositoryRule.getRuleClass().equals(MavenServerRule.NAME); if (!foundRepoRule) { if (repository.equals(MavenServerValue.DEFAULT_ID)) { settingsFiles = getDefaultSettingsFile(directories, env); serverName = MavenServerValue.DEFAULT_ID; url = MavenConnector.getMavenCentralRemote().getUrl(); } else { throw new RepositoryFunctionException( new IOException("Could not find maven repository " + repository), Transience.TRANSIENT); } } else { WorkspaceAttributeMapper mapper = WorkspaceAttributeMapper.of(repositoryRule); serverName = repositoryRule.getName(); try { url = mapper.get("url", Type.STRING); if (!mapper.isAttributeValueExplicitlySpecified("settings_file")) { settingsFiles = getDefaultSettingsFile(directories, env); } else { PathFragment settingsFilePath = new PathFragment(mapper.get("settings_file", Type.STRING)); RootedPath settingsPath = RootedPath.toRootedPath( directories.getWorkspace().getRelative(settingsFilePath), PathFragment.EMPTY_FRAGMENT); FileValue fileValue = (FileValue) env.getValue(FileValue.key(settingsPath)); if (fileValue == null) { return null; } if (!fileValue.exists()) { throw new RepositoryFunctionException( new IOException("Could not find settings file " + settingsPath), Transience.TRANSIENT); } settingsFiles = ImmutableMap.<String, FileValue>builder().put(USER_KEY, fileValue).build(); } } catch (EvalException e) { throw new RepositoryFunctionException(e, Transience.PERSISTENT); } } if (settingsFiles == null) { return null; } Fingerprint fingerprint = new Fingerprint(); try { for (Map.Entry<String, FileValue> entry : settingsFiles.entrySet()) { fingerprint.addString(entry.getKey()); Path path = entry.getValue().realRootedPath().asPath(); if (path.exists()) { fingerprint.addBoolean(true); fingerprint.addBytes(path.getDigest()); } else { fingerprint.addBoolean(false); } } } catch (IOException e) { throw new RepositoryFunctionException(e, Transience.TRANSIENT); } byte[] fingerprintBytes = fingerprint.digestAndReset(); if (settingsFiles.isEmpty()) { return new MavenServerValue(serverName, url, new Server(), fingerprintBytes); } DefaultSettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); if (settingsFiles.containsKey(SYSTEM_KEY)) { request.setGlobalSettingsFile(settingsFiles.get(SYSTEM_KEY).realRootedPath().asPath().getPathFile()); } if (settingsFiles.containsKey(USER_KEY)) { request.setUserSettingsFile(settingsFiles.get(USER_KEY).realRootedPath().asPath().getPathFile()); } DefaultSettingsBuilder builder = (new DefaultSettingsBuilderFactory()).newInstance(); SettingsBuildingResult result; try { result = builder.build(request); } catch (SettingsBuildingException e) { throw new RepositoryFunctionException( new IOException("Error parsing settings files: " + e.getMessage()), Transience.TRANSIENT); } if (!result.getProblems().isEmpty()) { throw new RepositoryFunctionException(new IOException( "Errors interpreting settings file: " + Arrays.toString(result.getProblems().toArray())), Transience.PERSISTENT); } Settings settings = result.getEffectiveSettings(); Server server = settings.getServer(serverName); server = server == null ? new Server() : server; return new MavenServerValue(serverName, url, server, fingerprintBytes); }
From source file:com.liferay.blade.cli.aether.AetherClient.java
License:Open Source License
private static Settings _buildSettings() { SettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); request.setGlobalSettingsFile(_DEFAULT_GLOBAL_SETTINGS_FILE); request.setUserSettingsFile(_USER_MAVEN_DEFAULT_USER_SETTINGS_FILE); try {/*from w w w . j av a 2 s .com*/ DefaultSettingsBuilder builder = new DefaultSettingsBuilderFactory().newInstance(); return builder.build(request).getEffectiveSettings(); } catch (SettingsBuildingException sbe) { sbe.printStackTrace(); return null; } }
From source file:com.oracle.bedrock.maven.Maven.java
License:CDDL license
/** * Obtain the Maven {@link Settings} for this {@link Maven} * given the specified {@link Platform} and {@link OptionsByType}. * * @param platform the {@link Platform} on which an {@link Application} will be launched * @param optionsByType the launch {@link OptionsByType} * * @return a new {@link Settings}/*from w w w .j av a 2 s .c om*/ */ private Settings getSettings(Platform platform, OptionsByType optionsByType) { SettingsBuilder settingsBuilder = new DefaultSettingsBuilderFactory().newInstance(); DefaultSettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); request.setGlobalSettingsFile(globalSettingsFile); request.setUserSettingsFile(userSettingsFile); // we use the system-properties of the current process to resolve artifacts request.setSystemProperties(System.getProperties()); Settings settings; try { settings = settingsBuilder.build(request).getEffectiveSettings(); return settings; } catch (SettingsBuildingException e) { LOGGER.log(Level.WARNING, "Could not process settings.xml: " + e.getMessage(), e); throw new IllegalArgumentException("Could not process the settings.xml", e); } }
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(); }//from www. j av a 2 s . c om 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.redhat.rcm.version.config.DefaultSessionConfigurator.java
License:Open Source License
private void loadSettings(final VersionManagerSession session) { MavenExecutionRequest executionRequest = session.getExecutionRequest(); if (executionRequest == null) { executionRequest = new DefaultMavenExecutionRequest(); }/*from w w w . j av a 2 s .co m*/ File settingsXml; try { settingsXml = getFile(session.getSettingsXml(), session.getDownloads()); } catch (final VManException e) { session.addError(e); return; } final DefaultSettingsBuildingRequest req = new DefaultSettingsBuildingRequest(); req.setUserSettingsFile(settingsXml); req.setSystemProperties(System.getProperties()); try { final SettingsBuildingResult result = settingsBuilder.build(req); final Settings settings = result.getEffectiveSettings(); final String proxyHost = System.getProperty("http.proxyHost"); final String proxyPort = System.getProperty("http.proxyPort", "8080"); final String nonProxyHosts = System.getProperty("http.nonProxyHosts", "localhost"); final String proxyUser = System.getProperty("http.proxyUser"); final String proxyPassword = System.getProperty("http.proxyPassword"); if (proxyHost != null) { final Proxy proxy = new Proxy(); proxy.setActive(true); proxy.setHost(proxyHost); proxy.setId("cli"); proxy.setNonProxyHosts(nonProxyHosts); proxy.setPort(Integer.parseInt(proxyPort)); if (proxyUser != null && proxyPassword != null) { proxy.setUsername(proxyUser); proxy.setPassword(proxyPassword); Authenticator.setDefault(new Authenticator() { @Override public PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(proxyUser, proxyPassword.toCharArray()); } }); } settings.setProxies(Collections.singletonList(proxy)); } executionRequest = requestPopulator.populateFromSettings(executionRequest, settings); session.setExecutionRequest(executionRequest); } catch (final SettingsBuildingException e) { session.addError(new VManException("Failed to build settings from: %s. Reason: %s", e, settingsXml, e.getMessage())); } catch (final MavenExecutionRequestPopulationException e) { session.addError(new VManException("Failed to initialize system using settings from: %s. Reason: %s", e, settingsXml, e.getMessage())); } }
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;//from w w w . j a v a 2 s . com try { SettingsBuildingResult settingsBuildingResult = settingsBuilder.build(settingsBuildingRequest); settings = settingsBuildingResult.getEffectiveSettings(); } catch (SettingsBuildingException unexpected) { throw new IllegalStateException(unexpected); } return new MavenSettings(settings); }
From source file:com.universalmediaserver.external.AbstractExternalDependencyMojo.java
License:Apache License
/** * Generates a settings builder request from parameters. * @return/*from w w w . jav a2 s.c o m*/ * The SettingsBuilderRequest instance */ public SettingsBuildingRequest getSettingsBuildingRequest() { DefaultSettingsBuildingRequest request = new DefaultSettingsBuildingRequest(); if (userSettings != null) { request.setUserSettingsFile(new File(userSettings)); } if (globalSettings != null) { request.setGlobalSettingsFile(new File(globalSettings)); } return request; }
From source file:fr.jetoile.hadoopunit.HadoopStandaloneBootstrap.java
License:Apache License
private static Settings getLocalSettings(String mavenHome) { if (settings == null) { File globalSettingsFile = new File(mavenHome + "/conf/settings.xml"); if (!globalSettingsFile.exists()) { LOGGER.error("maven global settings.xml file not found : {}", globalSettingsFile); }/*from w ww .ja v a 2 s . co m*/ File userSettingsFile = new File(System.getProperty("user.home") + "/.m2/settings.xml"); if (!userSettingsFile.exists()) { LOGGER.info("maven user settings.xml override file not found : {}", userSettingsFile); } PlexusContainer container = mvnContainer(); SettingsBuilder defaultSettingsBuilder = null; try { defaultSettingsBuilder = container.lookup(SettingsBuilder.class); } catch (ComponentLookupException e) { LOGGER.error("unable to lookup SettingsBuilder", e); } SettingsBuildingRequest settingsRequest = new DefaultSettingsBuildingRequest(); settingsRequest.setGlobalSettingsFile(globalSettingsFile); settingsRequest.setUserSettingsFile(userSettingsFile); try { settings = defaultSettingsBuilder.build(settingsRequest).getEffectiveSettings(); } catch (SettingsBuildingException e) { LOGGER.error("unable to get settings", e); } } return settings; }