Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
maven-settings-builder-3.5.4.jar - Maven Settings Builder Module
maven-settings-builder-3.5.4.jar is the JAR file for Apache Maven 3.5.4 Settings Builder module. Apache Maven is a software project management and comprehension tool.
JAR File Size and Download Location:
File: 2018-06-17 19:32 43145 lib\maven-settings-builder-3.5.4.jar Download: Apache Maven Website
✍: FYIcenter.com
⏎ org/apache/maven/settings/building/DefaultSettingsBuilder.java
package org.apache.maven.settings.building; /* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ import java.io.File; import java.io.IOException; import java.io.StringReader; import java.io.StringWriter; import java.util.Collections; import java.util.List; import java.util.Map; import org.apache.maven.building.FileSource; import org.apache.maven.building.Source; import org.apache.maven.settings.Settings; import org.apache.maven.settings.TrackableBase; import org.apache.maven.settings.io.SettingsParseException; import org.apache.maven.settings.io.SettingsReader; import org.apache.maven.settings.io.SettingsWriter; import org.apache.maven.settings.merge.MavenSettingsMerger; import org.apache.maven.settings.validation.SettingsValidator; import org.codehaus.plexus.component.annotations.Component; import org.codehaus.plexus.component.annotations.Requirement; import org.codehaus.plexus.interpolation.EnvarBasedValueSource; import org.codehaus.plexus.interpolation.InterpolationException; import org.codehaus.plexus.interpolation.InterpolationPostProcessor; import org.codehaus.plexus.interpolation.PropertiesBasedValueSource; import org.codehaus.plexus.interpolation.RegexBasedInterpolator; /** * Builds the effective settings from a user settings file and/or a global settings file. * * @author Benjamin Bentmann */ @Component( role = SettingsBuilder.class ) public class DefaultSettingsBuilder implements SettingsBuilder { @Requirement private SettingsReader settingsReader; @Requirement private SettingsWriter settingsWriter; @Requirement private SettingsValidator settingsValidator; private MavenSettingsMerger settingsMerger = new MavenSettingsMerger(); public DefaultSettingsBuilder setSettingsReader( SettingsReader settingsReader ) { this.settingsReader = settingsReader; return this; } public DefaultSettingsBuilder setSettingsWriter( SettingsWriter settingsWriter ) { this.settingsWriter = settingsWriter; return this; } public DefaultSettingsBuilder setSettingsValidator( SettingsValidator settingsValidator ) { this.settingsValidator = settingsValidator; return this; } @Override public SettingsBuildingResult build( SettingsBuildingRequest request ) throws SettingsBuildingException { DefaultSettingsProblemCollector problems = new DefaultSettingsProblemCollector( null ); Source globalSettingsSource = getSettingsSource( request.getGlobalSettingsFile(), request.getGlobalSettingsSource() ); Settings globalSettings = readSettings( globalSettingsSource, request, problems ); Source userSettingsSource = getSettingsSource( request.getUserSettingsFile(), request.getUserSettingsSource() ); Settings userSettings = readSettings( userSettingsSource, request, problems ); settingsMerger.merge( userSettings, globalSettings, TrackableBase.GLOBAL_LEVEL ); problems.setSource( "" ); userSettings = interpolate( userSettings, request, problems ); // for the special case of a drive-relative Windows path, make sure it's absolute to save plugins from trouble String localRepository = userSettings.getLocalRepository(); if ( localRepository != null && localRepository.length() > 0 ) { File file = new File( localRepository ); if ( !file.isAbsolute() && file.getPath().startsWith( File.separator ) ) { userSettings.setLocalRepository( file.getAbsolutePath() ); } } if ( hasErrors( problems.getProblems() ) ) { throw new SettingsBuildingException( problems.getProblems() ); } return new DefaultSettingsBuildingResult( userSettings, problems.getProblems() ); } private boolean hasErrors( List<SettingsProblem> problems ) { if ( problems != null ) { for ( SettingsProblem problem : problems ) { if ( SettingsProblem.Severity.ERROR.compareTo( problem.getSeverity() ) >= 0 ) { return true; } } } return false; } private Source getSettingsSource( File settingsFile, Source settingsSource ) { if ( settingsSource != null ) { return settingsSource; } else if ( settingsFile != null && settingsFile.exists() ) { return new FileSource( settingsFile ); } return null; } private Settings readSettings( Source settingsSource, SettingsBuildingRequest request, DefaultSettingsProblemCollector problems ) { if ( settingsSource == null ) { return new Settings(); } problems.setSource( settingsSource.getLocation() ); Settings settings; try { Map<String, ?> options = Collections.singletonMap( SettingsReader.IS_STRICT, Boolean.TRUE ); try { settings = settingsReader.read( settingsSource.getInputStream(), options ); } catch ( SettingsParseException e ) { options = Collections.singletonMap( SettingsReader.IS_STRICT, Boolean.FALSE ); settings = settingsReader.read( settingsSource.getInputStream(), options ); problems.add( SettingsProblem.Severity.WARNING, e.getMessage(), e.getLineNumber(), e.getColumnNumber(), e ); } } catch ( SettingsParseException e ) { problems.add( SettingsProblem.Severity.FATAL, "Non-parseable settings " + settingsSource.getLocation() + ": " + e.getMessage(), e.getLineNumber(), e.getColumnNumber(), e ); return new Settings(); } catch ( IOException e ) { problems.add( SettingsProblem.Severity.FATAL, "Non-readable settings " + settingsSource.getLocation() + ": " + e.getMessage(), -1, -1, e ); return new Settings(); } settingsValidator.validate( settings, problems ); return settings; } private Settings interpolate( Settings settings, SettingsBuildingRequest request, SettingsProblemCollector problems ) { StringWriter writer = new StringWriter( 1024 * 4 ); try { settingsWriter.write( writer, null, settings ); } catch ( IOException e ) { throw new IllegalStateException( "Failed to serialize settings to memory", e ); } String serializedSettings = writer.toString(); RegexBasedInterpolator interpolator = new RegexBasedInterpolator(); interpolator.addValueSource( new PropertiesBasedValueSource( request.getUserProperties() ) ); interpolator.addValueSource( new PropertiesBasedValueSource( request.getSystemProperties() ) ); try { interpolator.addValueSource( new EnvarBasedValueSource() ); } catch ( IOException e ) { problems.add( SettingsProblem.Severity.WARNING, "Failed to use environment variables for interpolation: " + e.getMessage(), -1, -1, e ); } interpolator.addPostProcessor( new InterpolationPostProcessor() { @Override public Object execute( String expression, Object value ) { if ( value != null ) { // we're going to parse this back in as XML so we need to escape XML markup value = value.toString().replace( "&", "&" ).replace( "<", "<" ).replace( ">", ">" ); return value; } return null; } } ); try { serializedSettings = interpolator.interpolate( serializedSettings, "settings" ); } catch ( InterpolationException e ) { problems.add( SettingsProblem.Severity.ERROR, "Failed to interpolate settings: " + e.getMessage(), -1, -1, e ); return settings; } Settings result; try { Map<String, ?> options = Collections.singletonMap( SettingsReader.IS_STRICT, Boolean.FALSE ); result = settingsReader.read( new StringReader( serializedSettings ), options ); } catch ( IOException e ) { problems.add( SettingsProblem.Severity.ERROR, "Failed to interpolate settings: " + e.getMessage(), -1, -1, e ); return settings; } return result; } }
⏎ org/apache/maven/settings/building/DefaultSettingsBuilder.java
Or download all of them as a single archive file:
File name: maven-settings-builder-3.5.4-src.zip File size: 38184 bytes Release date: 2018-06-17 Download
⇒ maven-model-builder-3.5.4.jar - Model Builder Module
⇐ maven-embedder-3.5.4.jar - Maven Embedder Module
2023-06-19, 3088👍, 0💬
Popular Posts:
How to download and install Apache XMLBeans Source Package? The source package contains Java source ...
What Is javax.websocket-api-1.1. jar?javax.websocket-api-1.1. jaris the JAR file for Java API for We...
JDOM provides a solution for using XML from Java that is as simple as Java itself. There is no compe...
The Digester package lets you configure an XML -> Java object mapping module, which triggers certain...
JDK 11 jdk.dynalink.jmod is the JMOD file for JDK 11 Dynamic Linking module. JDK 11 Dynamic Linking ...