List of usage examples for org.apache.maven.profiles DefaultProfileManager DefaultProfileManager
public DefaultProfileManager(PlexusContainer container)
From source file:org.codehaus.cargo.maven2.DependencyCalculator.java
License:Apache License
/** * Execute the dependency calculator./* w w w.ja v a 2 s . c o m*/ * @return List of dependency files. * @throws Exception If anything goes wrong. */ public Set<File> execute() throws Exception { ProfileManager profileManager = new DefaultProfileManager(container); fixupProjectArtifact(); // Calculate the new deps Artifact art = mavenProject.getArtifact(); Artifact art2 = artifactFactory.createArtifactWithClassifier(art.getGroupId() + ".cargodeps", art.getArtifactId(), art.getVersion(), "pom", null); resolver.resolve(art2, remoteRepositories, localRepository); MavenProject mavenProject = mavenProjectBuilder.buildWithDependencies(art2.getFile(), localRepository, profileManager); Set<File> filesToAdd = new HashSet<File>(); for (Object artifact : mavenProject.getArtifacts()) { Artifact artdep = (Artifact) artifact; if (artdep.getType().equals("jar")) { resolver.resolve(artdep, remoteRepositories, localRepository); filesToAdd.add(artdep.getFile()); } } return filesToAdd; }
From source file:org.codehaus.mojo.pomtools.wrapper.custom.ProjectWrapper.java
License:Apache License
/** Creates a temporary MavenProject from the current contents of our * wrappedModel. This is usefule when performing operations that need * full model resolution. For example, dependencies that inherit their versions * from the parent pom./*w w w.jav a2 s . c om*/ */ protected MavenProject createTempResolvedProject(Model model) throws PomToolsException, ProjectBuildingException, InvalidProjectModelException { PomToolsPluginContext context = PomToolsPluginContext.getInstance(); File baseDir = getBaseDir(); PlexusContainer container = context.getSession().getContainer(); File tempPomFile = null; try { tempPomFile = File.createTempFile(".pomtools-plugin-temp", "-pom.xml.", baseDir); tempPomFile.deleteOnExit(); ProjectWrapper.writeModel(tempPomFile, model); MavenProjectBuilder builder = (MavenProjectBuilder) container.lookup(MavenProjectBuilder.ROLE); // TODO: This is not right. I think we need to get a handle to the global ProfileManager ProfileManager profileManager = new DefaultProfileManager(container); APIWorkaroundHelper.clearBuilderCache(builder); MavenProject project = builder.build(tempPomFile, context.getMetadataHelper().getLocalRepository(), profileManager); return project; } catch (IOException e) { throw new PomToolsException("An error occured while writing temporary pom", e); } catch (ComponentLookupException e) { throw new PomToolsException("Unable to get the default MavenProjectBuilder", e); } finally { if (tempPomFile != null && tempPomFile.exists()) { tempPomFile.delete(); } } }
From source file:org.mobicents.maven.plugin.utils.ProjectUtils.java
License:Open Source License
/** * Gets a project for the given <code>pom</code>. * * @param pom the pom from which to build the project. * @return the built project./*from www . jav a 2 s .c o m*/ * @throws ProjectBuildingException */ public static synchronized MavenProject getProject(final MavenProjectBuilder projectBuilder, final MavenSession session, final File pom, final Log logger) throws ProjectBuildingException { // - first attempt to get a project from the cache MavenProject project = (MavenProject) projectCache.get(pom); if (project == null) { // - next attempt to get the existing project from the session project = getProjectFromSession(session, pom); if (project == null) { // - if we didn't find it in the session, create it try { project = projectBuilder.build(pom, session.getLocalRepository(), new DefaultProfileManager(session.getContainer())); projectCache.put(pom, project); } catch (Exception ex) { if (logger.isDebugEnabled()) { logger.debug("Failed to build project from pom: " + pom, ex); } } } } return project; }