List of usage examples for org.apache.maven.project MavenProject getId
public String getId()
From source file:com.exentes.maven.versions.VersionMojoUtils.java
License:Apache License
public static String projectDependencyKey(MavenProject project, Dependency dependency) { return project.getId() + "->" + dependency.getGroupId() + ":" + dependency.getArtifactId() + ":" + dependency.getType() + (dependency.getClassifier() != null ? dependency.getClassifier() : ""); }
From source file:com.github.wix_maven.PatchMojo.java
License:Apache License
protected Set<Artifact> resolveDependencyArtifacts(MavenProject theProject) throws ArtifactResolutionException, ArtifactNotFoundException, InvalidDependencyVersionException { Set<Artifact> artifacts = theProject.createArtifacts(this.factory, null, new ScopeArtifactFilter(Artifact.SCOPE_COMPILE)); // doubt: scope if not null is ignoring the Provided scope elements - all examples show using some scope getLog().info("Checking " + artifacts.size() + " dependents of " + theProject.getId()); for (Artifact artifact : artifacts) { getLog().debug("Checking dependent " + artifact.getId()); // resolve the new artifact this.resolver.resolve(artifact, this.remoteArtifactRepositories, this.localRepository); }//from w w w .java 2s . c om return artifacts; }
From source file:com.github.zhve.ideaplugin.ArtifactDependencyResolver.java
License:Apache License
/** * Transitive resolve all dependencies for reactor projects * * @param artifactFactory standard Maven's factory to create artifacts * @param reactorArtifacts reactor artifacts * @param reactorProjects reactor projects * @return dependency map: reactor project -> dependency data * @throws InvalidVersionSpecificationException error *//*from w w w. j a va 2 s . c o m*/ private Map<MavenProject, DependencyData> findDependencies(Log log, ArtifactFactory artifactFactory, Set<Artifact> reactorArtifacts, List<MavenProject> reactorProjects) throws InvalidVersionSpecificationException { // artifact -> all transitive dependencies Map<Artifact, DependencyData> dependencyMap = new HashMap<Artifact, DependencyData>(); log.info(""); log.info("Detect Dependencies"); for (MavenProject project : reactorProjects) { log.info(""); log.info(project.getId()); List<Artifact> remoteData = new ArrayList<Artifact>(); List<Artifact> reactorData = new ArrayList<Artifact>(); for (Object object : project.getDependencies()) { Dependency dependency = (Dependency) object; Artifact dependencyArtifact = toDependencyArtifact(artifactFactory, dependency); boolean reactor = reactorArtifacts.contains(dependencyArtifact); String id = dependencyArtifact.getId() + ":" + dependencyArtifact.getScope(); if ("jar".equals(dependencyArtifact.getType())) { if (reactor) { log.info("R " + id); reactorData.add(dependencyArtifact); } else { log.info(" " + id); remoteData.add(dependencyArtifact); } } else { log.info("O " + id + " (type=" + dependencyArtifact.getType() + ")"); } } // save dependency data for project dependencyMap.put(project.getArtifact(), new DependencyData(remoteData, reactorData)); } log.info(""); log.info("Resolve Dependencies"); Map<MavenProject, DependencyData> result = new LinkedHashMap<MavenProject, DependencyData>(); for (MavenProject project : reactorProjects) { log.info(""); log.info(project.getId()); Map<String, Artifact> reactorData = new LinkedHashMap<String, Artifact>(); Map<String, Artifact> remoteData = new LinkedHashMap<String, Artifact>(); Queue<Artifact> queue = new LinkedList<Artifact>(); queue.add(project.getArtifact()); while (!queue.isEmpty()) { Artifact artifact = queue.poll(); log.info("# " + artifact.getId() + ":" + artifact.getScope()); DependencyData artifactDependencyData = dependencyMap.get(artifact); // analyze all remote dependencies for given level for (Artifact dependency : artifactDependencyData.getRemoteList()) { String dependencyConflictId = dependency.getDependencyConflictId(); Artifact dependencyArtifact = toDependencyArtifact(artifactFactory, dependency, artifact.getScope()); if (dependencyArtifact != null) { String fullName = dependencyArtifact.getId() + ":" + dependencyArtifact.getScope(); Artifact prevArtifact = remoteData.get(dependencyConflictId); if (prevArtifact == null) { // new remote dependency log.info(" " + fullName); remoteData.put(dependencyConflictId, dependencyArtifact); } else { // we have already added this remote dependency if (prevArtifact.getId().equals(dependencyArtifact.getId())) { log.info("D " + fullName); } else { log.info("C " + fullName); log.info(" " + project.getArtifact().getId()); log.info(" " + "+-" + prevArtifact.getId() + ":" + prevArtifact.getScope()); log.info(" " + "+-" + artifact.getId() + ":" + artifact.getScope()); log.info(" " + " \\-" + fullName); } } } else { log.info("O " + dependency.getId() + ":" + dependency.getScope() + " (inherit=" + artifact.getId() + ":" + artifact.getScope() + ")"); } } // analyze all reactor dependencies for given level for (Artifact dependency : artifactDependencyData.getReactorList()) { String dependencyConflictId = dependency.getDependencyConflictId(); Artifact dependencyArtifact = toDependencyArtifact(artifactFactory, dependency, artifact.getScope()); if (dependencyArtifact != null) { String fullName = dependencyArtifact.getId() + ":" + dependencyArtifact.getScope(); Artifact prevArtifact = reactorData.get(dependencyConflictId); if (prevArtifact == null) { // new reactor dependency log.info("R " + fullName); reactorData.put(dependencyConflictId, dependencyArtifact); // go deep queue.add(dependencyArtifact); } else { // we have already added this remote dependency if (prevArtifact.getId().equals(dependencyArtifact.getId())) { log.info("D " + fullName); } else { log.info("C " + fullName); log.info(" " + project.getArtifact().getId()); log.info(" " + "+-" + prevArtifact.getId() + ":" + prevArtifact.getScope()); log.info(" " + "+-" + artifact.getId() + ":" + artifact.getScope()); log.info(" " + " \\-" + fullName); } } } else { log.info("O " + dependency.getId() + ":" + dependency.getScope() + " (inherit=" + artifact.getId() + ":" + artifact.getScope() + ")"); } } } result.put(project, new DependencyData(new ArrayList<Artifact>(remoteData.values()), new ArrayList<Artifact>(reactorData.values()))); } return result; }
From source file:com.github.zhve.ideaplugin.IdeaListMojo.java
License:Apache License
@Override public void execute() throws MojoExecutionException, MojoFailureException { ArtifactDependencyResolver resolver = new ArtifactDependencyResolver(getLog(), artifactFactory, artifactResolver, localRepository, artifactMetadataSource); ArtifactHolder artifactHolder = new ArtifactHolder(getLog(), resolver, reactorProjects); for (MavenProject project : reactorProjects) { List<Artifact> list = new ArrayList<Artifact>(artifactHolder.getDependencies(project)); Collections.sort(list, ArtifactComparator.INSTANCE); getLog().info(" \n" + "[INFO] ------------------------------------------------------------------------\n" + "[INFO] Listing " + project.getName() + " " + project.getId() + "\n" + "[INFO] ------------------------------------------------------------------------\n" + "[INFO] \n" + "[INFO] --- \n" + "[INFO] "); getLog().info("The following files have been resolved:"); for (Artifact artifact : list) getLog().info(/*from w w w . j av a 2 s .co m*/ " " + artifact.getGroupId() + ":" + artifact.getArtifactId() + ":" + artifact.getType() + ":" + (artifact.getClassifier() != null ? artifact.getClassifier() + ":" : "") + artifact.getVersion() + ":" + artifact.getScope()); getLog().info(""); } }
From source file:com.googlecode.maven.licensevalidator.LicenseValidateMojo.java
License:Apache License
@Override public void execute() throws MojoExecutionException { if (verbose) { getLog().info("Validating licenses"); }//from ww w. java 2 s .c o m final Set<Artifact> depArtifacts; if (includeTransitiveDependencies) { depArtifacts = project.getArtifacts(); } else { depArtifacts = project.getDependencyArtifacts(); } boolean someFailed = false; for (Artifact depArtifact : depArtifacts) { MavenProject depProject = null; try { depProject = projectBuilder.buildFromRepository(depArtifact, remoteRepositories, localRepository); } catch (ProjectBuildingException e) { throw new MojoExecutionException( "Unable to build project: " + depArtifact.getDependencyConflictId(), e); } List<License> licenses = depProject.getLicenses(); boolean failed = areLicensesBanned(depProject.getId(), licenses); someFailed |= failed; if (someFailed && failFast) { throw new MojoExecutionException("Failed license checks for dependency " + depProject.getId()); } } if (someFailed) { throw new MojoExecutionException("Failed license checks for some dependencies"); } }
From source file:com.redhat.rcm.maven.plugin.buildmetadata.data.MavenMetaDataProvider.java
License:Apache License
private void provideExecutedProjectInfo(final Properties buildMetaDataProperties) { buildMetaDataProperties.setProperty(Constant.PROP_NAME_MAVEN_IS_EXECUTION_ROOT, String.valueOf(project.isExecutionRoot())); final MavenProject executionProject = project.getExecutionProject(); if (executionProject != null) { buildMetaDataProperties.setProperty(Constant.PROP_NAME_MAVEN_EXECUTION_PROJECT, executionProject.getId()); }// ww w . j av a 2s. c om }
From source file:com.redhat.rcm.version.mgr.session.ManagedInfo.java
License:Open Source License
void addBOM(final File bom, final MavenProject project) throws VManException { final FullProjectKey key = new FullProjectKey(project.getGroupId(), project.getArtifactId(), project.getVersion());//from w w w . j av a 2 s. c o m if (bomProjects.containsKey(key)) { return; } bomProjects.put(key, project); startBomMap(bom, project.getGroupId(), project.getArtifactId(), project.getVersion()); if (project.getDependencyManagement() != null && project.getDependencyManagement().getDependencies() != null) { for (final Dependency dep : project.getDependencyManagement().getDependencies()) { mapDependency(bom, dep); } } final Properties properties = project.getProperties(); if (properties != null) { final String relocations = properties.getProperty(RELOCATIONS_KEY); logger.info("Got relocations:\n\n" + relocations); if (relocations != null) { logger.warn("[DEPRECATED] BOM-based coordinate relocations have been replaced by the " + Cli.RELOCATIONS_PROPERTY + " configuration, which specifies a URL to a properties file. Please use this instead."); relocatedCoords.addBomRelocations(bom, parseProperties(relocations)); } final String mappings = properties.getProperty(MAPPINGS_KEY); logger.info("Got mappings:\n\n" + mappings); if (mappings != null) { logger.warn("[DEPRECATED] BOM-based property mappings have been replaced by the " + Cli.PROPERTY_MAPPINGS_PROPERTY + " configuration, which specifies a URL to a properties file. Please use this instead."); propertyMappings.addBomPropertyMappings(bom, project.getProperties(), parseProperties(mappings)); } } logger.info("Updating property mappings from " + project.getId()); // NOTE: parent properties are inherited into the BOM by the time the MavenProject instance // is created, so we don't need to traverse up to the parent; we should have everything here. propertyMappings.updateProjectMap(project.getProperties()); }
From source file:com.rodiontsev.maven.plugins.buildinfo.providers.ProjectInfoProvider.java
License:Apache License
public Map<String, String> getInfo(MavenProject project, BuildInfoMojo mojo) { // finite set of project properties we expose final Map<String, String> props = new LinkedHashMap<String, String>(65); props.put("project.id", project.getId()); props.put("project.groupId", project.getGroupId()); props.put("project.artifactId", project.getArtifactId()); props.put("project.version", project.getVersion()); props.put("project.name", project.getName()); props.put("project.description", project.getDescription()); props.put("project.modelVersion", project.getModelVersion()); props.put("project.inceptionYear", project.getInceptionYear()); props.put("project.packaging", project.getPackaging()); props.put("project.url", project.getUrl()); final MavenProject parent = project.getParent(); if (parent != null) { props.put("project.parent.id", parent.getId()); props.put("project.parent.groupId", parent.getGroupId()); props.put("project.parent.artifactId", parent.getArtifactId()); props.put("project.parent.version", parent.getVersion()); props.put("project.parent.name", parent.getName()); props.put("project.parent.description", parent.getDescription()); props.put("project.parent.modelVersion", parent.getModelVersion()); props.put("project.parent.inceptionYear", parent.getInceptionYear()); props.put("project.parent.packaging", parent.getPackaging()); props.put("project.parent.url", parent.getUrl()); }/*from w w w. j av a 2 s. co m*/ // properties the user wants Map<String, String> info = new LinkedHashMap<String, String>(); for (String propertyName : mojo.getProjectProperties()) { String prop = props.get(propertyName); if (prop != null) { info.put(propertyName, prop); } } info.put("build.time", DateFormatUtils.format(new Date(), "d MMMM yyyy, HH:mm:ss ZZ", Locale.ENGLISH)); return info; }
From source file:com.rodiontsev.maven.plugins.buildinfo.providers.ProjectPropertiesProvider.java
License:Apache License
public Map<String, String> getInfo(MavenProject project, BuildInfoMojo mojo) { // finite set of project properties we expose final Map<String, String> projectProperties = new LinkedHashMap<String, String>(65); projectProperties.put("project.id", project.getId()); projectProperties.put("project.groupId", project.getGroupId()); projectProperties.put("project.artifactId", project.getArtifactId()); projectProperties.put("project.version", project.getVersion()); projectProperties.put("project.name", project.getName()); projectProperties.put("project.description", project.getDescription()); projectProperties.put("project.modelVersion", project.getModelVersion()); projectProperties.put("project.inceptionYear", project.getInceptionYear()); projectProperties.put("project.packaging", project.getPackaging()); projectProperties.put("project.url", project.getUrl()); MavenProject parent = project.getParent(); if (parent != null) { projectProperties.put("project.parent.id", parent.getId()); projectProperties.put("project.parent.groupId", parent.getGroupId()); projectProperties.put("project.parent.artifactId", parent.getArtifactId()); projectProperties.put("project.parent.version", parent.getVersion()); projectProperties.put("project.parent.name", parent.getName()); projectProperties.put("project.parent.description", parent.getDescription()); projectProperties.put("project.parent.modelVersion", parent.getModelVersion()); projectProperties.put("project.parent.inceptionYear", parent.getInceptionYear()); projectProperties.put("project.parent.packaging", parent.getPackaging()); projectProperties.put("project.parent.url", parent.getUrl()); }/* w ww.j a v a2 s . c o m*/ Map<String, String> info = new LinkedHashMap<String, String>(); new InfoWriter().write(info, mojo.getProjectProperties(), new PropertyMapper() { @Override public String mapProperty(String propertyName) { return projectProperties.get(propertyName); } }); return info; }
From source file:com.serli.maven.plugin.quality.mojo.LicenseMojo.java
License:Open Source License
private void printLicenses() { // TODO afficher au format XML et dans un fichier ou non Set<LightLicense> keys = resultLicenseMap.keySet(); for (LightLicense license : keys) { String url = license.getUrl(); String name = license.getName(); if (StringUtils.isEmpty(name)) { name = "Unnamed"; }// w w w. j a v a 2 s . c om System.out.println("Licence " + name + " - " + url); SortedSet<MavenProjectComparable> sortedSet = resultLicenseMap.get(license); for (MavenProject artifact : sortedSet) { System.out.println("\t " + artifact.getId()); } } System.out.println("Inconnu : "); for (MavenProject project : setArtifactNoLicense) { System.out.println("\t " + project.getId()); } }