List of usage examples for org.apache.maven.execution MavenSession getSystemProperties
public Properties getSystemProperties()
From source file:io.takari.maven.workspace.GenerationsWorkspaceReader.java
License:Apache License
@Inject public GenerationsWorkspaceReader(MavenSession session) { String forceArtifactResolutionFromReactor = session.getSystemProperties() .getProperty("maven.forceArtifactResolutionFromReactor"); if (forceArtifactResolutionFromReactor != null && forceArtifactResolutionFromReactor.equals("true")) { allowArtifactsWithoutAFileToBeResolvedInTheReactor = Boolean .parseBoolean(forceArtifactResolutionFromReactor); }/*from www . ja va 2 s. c om*/ // // Right now this is only enabled for the maven-eclipse-plugin // String resolveFromWorkspaceProperty = session.getSystemProperties() .getProperty("maven.workspaceResolutionEnabled"); if (resolveFromWorkspaceProperty != null && resolveFromWorkspaceProperty.equals("true")) { workspaceResolutionEnabled = Boolean.parseBoolean(resolveFromWorkspaceProperty); } // // Buildspace // buildProjects = session.getProjectMap(); buildProjectsByGA = new HashMap<String, List<MavenProject>>(); for (MavenProject project : buildProjects.values()) { String key = ArtifactUtils.versionlessKey(project.getGroupId(), project.getArtifactId()); List<MavenProject> projects = buildProjectsByGA.get(key); if (projects == null) { projects = new ArrayList<MavenProject>(1); buildProjectsByGA.put(key, projects); } projects.add(project); } // // Workspace // workspaceProjects = getProjectMap(session.getAllProjects()); workspaceProjectsByGA = new HashMap<String, List<MavenProject>>(); for (MavenProject project : workspaceProjects.values()) { String key = ArtifactUtils.versionlessKey(project.getGroupId(), project.getArtifactId()); List<MavenProject> projects = workspaceProjectsByGA.get(key); if (projects == null) { projects = new ArrayList<MavenProject>(1); workspaceProjectsByGA.put(key, projects); } projects.add(project); } repository = new WorkspaceRepository("reactor", new HashSet<String>(buildProjects.keySet())); }
From source file:kr.motd.maven.os.DetectExtension.java
License:Apache License
@Override public void afterProjectsRead(MavenSession session) throws MavenExecutionException { Properties sessionProps = session.getSystemProperties(); // Detect the OS and CPU architecture. try {/*from www . j av a 2 s . c om*/ detector.detect(sessionProps); } catch (DetectionException e) { throw new MavenExecutionException(e.getMessage(), session.getCurrentProject().getFile()); } // Generate the dictionary. Map<String, String> dict = new LinkedHashMap<String, String>(); dict.put(Detector.DETECTED_NAME, sessionProps.getProperty(Detector.DETECTED_NAME)); dict.put(Detector.DETECTED_ARCH, sessionProps.getProperty(Detector.DETECTED_ARCH)); dict.put(Detector.DETECTED_CLASSIFIER, sessionProps.getProperty(Detector.DETECTED_CLASSIFIER)); // Inject the current session. injectSession(session, dict); /// Perform the interpolation for the properties of all dependencies. for (MavenProject p : session.getProjects()) { interpolate(dict, p); } }
From source file:ms.dew.devops.maven.mojo.BasicMojo.java
License:Apache License
/** * ?Maven./*from w w w .j av a 2 s.c om*/ * * @param session maven mavenSession * @return properties maven properties */ private static Map<String, String> getMavenProperties(MavenSession session) { Map<String, String> props = new HashMap<>(); props.putAll(session.getSystemProperties().entrySet().stream().collect(Collectors.toMap( prop -> prop.getKey().toString().toLowerCase().trim(), prop -> prop.getValue().toString().trim()))); props.putAll(session.getUserProperties().entrySet().stream().collect(Collectors.toMap( prop -> prop.getKey().toString().toLowerCase().trim(), prop -> prop.getValue().toString().trim()))); // Support gitlab ci runner by chart. props.putAll(props.entrySet().stream().filter(prop -> prop.getKey().startsWith("env.")) .collect(Collectors.toMap(prop -> prop.getKey().substring("env.".length()), Map.Entry::getValue))); return props; }
From source file:org.apache.sling.maven.projectsupport.BundleListUtils.java
License:Apache License
public static Interpolator createInterpolator(MavenProject project, MavenSession mavenSession) { StringSearchInterpolator interpolator = new StringSearchInterpolator(); final Properties props = new Properties(); props.putAll(project.getProperties()); props.putAll(mavenSession.getSystemProperties()); props.putAll(mavenSession.getUserProperties()); interpolator.addValueSource(new PropertiesBasedValueSource(props)); // add ${project.foo} interpolator.addValueSource(new PrefixedObjectValueSource(Arrays.asList("project", "pom"), project, true)); // add ${session.foo} interpolator.addValueSource(new PrefixedObjectValueSource("session", mavenSession)); // add ${settings.foo} final Settings settings = mavenSession.getSettings(); if (settings != null) { interpolator.addValueSource(new PrefixedObjectValueSource("settings", settings)); }/*from w ww. ja v a2 s. c o m*/ return interpolator; }
From source file:org.codehaus.mojo.unix.maven.plugin.MavenProjectWrapper.java
License:Open Source License
public static MavenProjectWrapper mavenProjectWrapper(final MavenProject project, MavenSession session) { SortedMap<String, String> properties = new TreeMap<String, String>(); // This is perhaps not ideal. Maven uses reflection to dynamically extract properties from the project // when interpolating each file. This uses a static list that doesn't contain the project.* properties, except // the new we hard-code support for. ///*from w w w . jav a 2 s .co m*/ // The user can work around this like this: // <properties> // <project.build.directory>${project.build.directory}</project.build.directory> // </properties> // // If this has to change, the properties has to be a F<String, String> and interpolation tokens ("${" and "}") // has to be defined. Doable but too painful for now. properties.putAll(toMap(session.getSystemProperties())); properties.putAll(toMap(session.getUserProperties())); properties.putAll(toMap(project.getProperties())); properties.put("project.groupId", project.getGroupId()); properties.put("project.artifactId", project.getArtifactId()); properties.put("project.version", project.getVersion()); return new MavenProjectWrapper(project.getGroupId(), project.getArtifactId(), project.getVersion(), project.getArtifact(), project.getName(), project.getDescription(), project.getBasedir(), new File(project.getBuild().getDirectory()), new LocalDateTime(), project.getArtifacts(), project.getLicenses(), new ArtifactMap(project.getArtifacts()), unmodifiableSortedMap(properties)); }
From source file:org.eclipse.tycho.core.maven.TychoInterpolator.java
License:Open Source License
public TychoInterpolator(MavenSession mavenSession, MavenProject mavenProject) { final Properties baseProps = new Properties(); // The order how the properties been added is important! // It defines which properties win over others // (session user properties overwrite system properties overwrite project properties) baseProps.putAll(mavenProject.getProperties()); baseProps.putAll(mavenSession.getSystemProperties()); baseProps.putAll(mavenSession.getUserProperties()); final Settings settings = mavenSession.getSettings(); // roughly match resources plugin behaviour // Using the project and settings as object value source to get things replaces like // ${project.artifactId}...; // Simple string replacement for ${localRepository}, ${version}, ${basedir}; // An and string replacement for all property values // (session user properties, system properties, project properties). interpolator = new StringSearchInterpolator(); interpolator.addValueSource(new PrefixedObjectValueSource("project", mavenProject)); interpolator.addValueSource(new PrefixedObjectValueSource("settings", settings)); interpolator/*from w w w. j a v a 2s. c o m*/ .addValueSource(new SingleResponseValueSource("localRepository", settings.getLocalRepository())); interpolator.addValueSource(new SingleResponseValueSource("version", mavenProject.getVersion())); interpolator.addValueSource( new SingleResponseValueSource("basedir", mavenProject.getBasedir().getAbsolutePath())); interpolator.addValueSource(new ValueSource() { @Override public Object getValue(String expression) { return baseProps.getProperty(expression); } @Override public void clearFeedback() { } @Override @SuppressWarnings("rawtypes") public List getFeedback() { return Collections.EMPTY_LIST; } }); }
From source file:org.eclipse.tycho.core.resolver.DefaultTychoDependencyResolver.java
License:Open Source License
public void setupProject(MavenSession session, MavenProject project, ReactorProject reactorProject) { AbstractTychoProject dr = (AbstractTychoProject) projectTypes.get(project.getPackaging()); if (dr == null) { return;//www .j a v a 2 s . c o m } // generic Eclipse/OSGi metadata dr.setupProject(session, project); // p2 metadata Properties properties = new Properties(); properties.putAll(project.getProperties()); properties.putAll(session.getSystemProperties()); // session wins properties.putAll(session.getUserProperties()); project.setContextValue(TychoConstants.CTX_MERGED_PROPERTIES, properties); TargetPlatformConfiguration configuration = configurationReader.getTargetPlatformConfiguration(session, project); project.setContextValue(TychoConstants.CTX_TARGET_PLATFORM_CONFIGURATION, configuration); TargetPlatformResolver resolver = targetPlatformResolverLocator.lookupPlatformResolver(project); resolver.setupProjects(session, project, reactorProject); }
From source file:org.eclipse.tycho.core.resolver.DefaultTychoResolver.java
License:Open Source License
@Override public void setupProject(MavenSession session, MavenProject project, ReactorProject reactorProject) { AbstractTychoProject dr = (AbstractTychoProject) projectTypes.get(project.getPackaging()); if (dr == null) { return;/* ww w .j av a 2 s .c o m*/ } // skip if setup was already done if (project.getContextValue(TychoConstants.CTX_MERGED_PROPERTIES) != null) { return; } // generic Eclipse/OSGi metadata dr.setupProject(session, project); // p2 metadata Properties properties = new Properties(); properties.putAll(project.getProperties()); properties.putAll(session.getSystemProperties()); // session wins properties.putAll(session.getUserProperties()); project.setContextValue(TychoConstants.CTX_MERGED_PROPERTIES, properties); setTychoEnvironmentProperties(properties, project); TargetPlatformConfiguration configuration = configurationReader.getTargetPlatformConfiguration(session, project); project.setContextValue(TychoConstants.CTX_TARGET_PLATFORM_CONFIGURATION, configuration); ExecutionEnvironmentConfiguration eeConfiguration = new ExecutionEnvironmentConfigurationImpl(logger, !configuration.isResolveWithEEConstraints()); dr.readExecutionEnvironmentConfiguration(project, eeConfiguration); project.setContextValue(TychoConstants.CTX_EXECUTION_ENVIRONMENT_CONFIGURATION, eeConfiguration); DependencyResolver resolver = dependencyResolverLocator.lookupDependencyResolver(project); resolver.setupProjects(session, project, reactorProject); }
From source file:org.eclipse.tycho.plugins.p2.publisher.PublishProductMojo.java
License:Open Source License
protected Interpolator newInterpolator() { final MavenProject mavenProject = getProject(); final MavenSession mavenSession = getSession(); final Properties baseProps = new Properties(); baseProps.putAll(mavenProject.getProperties()); baseProps.putAll(mavenSession.getSystemProperties()); baseProps.putAll(mavenSession.getUserProperties()); final Settings settings = mavenSession.getSettings(); // roughly match resources plugin behaviour final StringSearchInterpolator interpolator = new StringSearchInterpolator(); interpolator.addValueSource(new PrefixedObjectValueSource("project", mavenProject)); interpolator.addValueSource(new PrefixedObjectValueSource("settings", settings)); interpolator// w w w. jav a 2s .c o m .addValueSource(new SingleResponseValueSource("localRepository", settings.getLocalRepository())); interpolator.addValueSource(new ValueSource() { public Object getValue(String expression) { return baseProps.getProperty(expression); } public void clearFeedback() { } @SuppressWarnings("rawtypes") public List getFeedback() { return Collections.EMPTY_LIST; } }); return interpolator; }
From source file:org.jfrog.build.extractor.maven.BuildInfoRecorderLifecycleParticipant.java
License:Apache License
private ArtifactoryClientConfiguration getConfiguration(MavenSession session) { if (internalConfiguration != null) { return internalConfiguration; }//from ww w.j a v a2 s . c o m Properties allMavenProps = new Properties(); allMavenProps.putAll(session.getSystemProperties()); allMavenProps.putAll(session.getUserProperties()); Maven3BuildInfoLogger log = new Maven3BuildInfoLogger(logger); Properties allProps = BuildInfoExtractorUtils.mergePropertiesWithSystemAndPropertyFile(allMavenProps, log); internalConfiguration = new ArtifactoryClientConfiguration(log); internalConfiguration.fillFromProperties(allProps); return internalConfiguration; }