List of usage examples for org.apache.maven DefaultMaven newRepositorySession
public RepositorySystemSession newRepositorySession(MavenExecutionRequest request)
From source file:com.ruleoftech.markdown.page.generator.plugin.BetterAbstractMojoTestCase.java
protected MavenSession newMavenSession() { try {//from w ww . j a v a 2s . com MavenExecutionRequest request = new DefaultMavenExecutionRequest(); MavenExecutionResult result = new DefaultMavenExecutionResult(); // populate sensible defaults, including repository basedir and remote repos MavenExecutionRequestPopulator populator; populator = getContainer().lookup(MavenExecutionRequestPopulator.class); populator.populateDefaults(request); // this is needed to allow java profiles to get resolved; i.e. avoid during project builds: // [ERROR] Failed to determine Java version for profile java-1.5-detected @ org.apache.commons:commons-parent:22, /Users/alex/.m2/repository/org/apache/commons/commons-parent/22/commons-parent-22.pom, line 909, column 14 request.setSystemProperties(System.getProperties()); // and this is needed so that the repo session in the maven session // has a repo manager, and it points at the local repo // (cf MavenRepositorySystemUtils.newSession() which is what is otherwise done) DefaultMaven maven = (DefaultMaven) getContainer().lookup(Maven.class); DefaultRepositorySystemSession repoSession = (DefaultRepositorySystemSession) maven .newRepositorySession(request); repoSession.setLocalRepositoryManager(new SimpleLocalRepositoryManagerFactory().newInstance(repoSession, new LocalRepository(request.getLocalRepository().getBasedir()))); @SuppressWarnings("deprecation") MavenSession session = new MavenSession(getContainer(), repoSession, request, result); return session; } catch (Exception e) { throw new RuntimeException(e); } }
From source file:com.vladsch.flexmark.page.generator.plugin.BetterAbstractMojoTestCase.java
protected MavenSession newMavenSession() { try {//from w w w .j a v a2 s . c o m MavenExecutionRequest request = new DefaultMavenExecutionRequest(); MavenExecutionResult result = new DefaultMavenExecutionResult(); // populate sensible defaults, including repository basedir and remote repos MavenExecutionRequestPopulator populator; populator = getContainer().lookup(MavenExecutionRequestPopulator.class); populator.populateDefaults(request); // this is needed to allow java profiles to get resolved; i.e. avoid during project builds: // [ERROR] Failed to determine Java version for profile java-1.5-detected @ org.apache.commons:commons-parent:22, /Users/alex/.m2/repository/org/apache/commons/commons-parent/22/commons-parent-22.pom, line 909, column 14 request.setSystemProperties(System.getProperties()); // and this is needed so that the repo session in the maven session // has a repo manager, and it points at the local repo // (cf MavenRepositorySystemUtils.newSession() which is what is otherwise done) DefaultMaven maven = (DefaultMaven) getContainer().lookup(Maven.class); DefaultRepositorySystemSession repoSession = (DefaultRepositorySystemSession) maven .newRepositorySession(request); repoSession.setLocalRepositoryManager(new SimpleLocalRepositoryManagerFactory().newInstance(repoSession, new LocalRepository(request.getLocalRepository().getBasedir()))); @SuppressWarnings("deprecation") MavenSession session = new MavenSession(getContainer(), repoSession, request, result); return session; } catch (Exception e) { throw new RuntimeException(e); } }
From source file:hudson.maven.MavenEmbedder.java
License:Apache License
private RepositorySystemSession buildRepositorySystemSession() throws ComponentLookupException { DefaultMaven defaultMaven = (DefaultMaven) plexusContainer.lookup(Maven.class); return defaultMaven.newRepositorySession(mavenExecutionRequest); }
From source file:info.debatty.sparkpackages.maven.plugin.MojoTestCase.java
License:Open Source License
/** * Create an instance of Mojo corresponding to the provided goal. * The Mojo will be configured according to values provided in the pom. * @param pom/* w w w. j a v a 2s . c o m*/ * @param goal * @return * @throws Exception if something went wrong... */ public final Mojo lookupConfiguredMojo(final File pom, final String goal) throws Exception { MavenExecutionRequest request = new DefaultMavenExecutionRequest(); MavenExecutionResult result = new DefaultMavenExecutionResult(); // populate default values for (a.o.) repository basedir and // remote repos MavenExecutionRequestPopulator populator = getContainer().lookup(MavenExecutionRequestPopulator.class); populator.populateDefaults(request); // this is needed to allow java profiles to get resolved; // i.e. avoid during project builds: // [ERROR] Failed to determine Java version for profile // java-1.5-detected request.setSystemProperties(System.getProperties()); // and this is needed so that the repo session in the maven session // has a repo manager, and it points at the local repo // (cf MavenRepositorySystemUtils.newSession() which is what is // otherwise done) DefaultMaven maven = (DefaultMaven) getContainer().lookup(Maven.class); DefaultRepositorySystemSession repo_session = (DefaultRepositorySystemSession) maven .newRepositorySession(request); repo_session.setLocalRepositoryManager(new SimpleLocalRepositoryManagerFactory().newInstance(repo_session, new LocalRepository(request.getLocalRepository().getBasedir()))); @SuppressWarnings("deprecation") MavenSession session = new MavenSession(getContainer(), repo_session, request, result); ProjectBuildingRequest building_request = session.getProjectBuildingRequest(); ProjectBuilder project_builder = lookup(ProjectBuilder.class); MavenProject project = project_builder.build(pom, building_request).getProject(); return super.lookupConfiguredMojo(project, goal); }
From source file:org.appformer.maven.integration.embedder.PlexusComponentProvider.java
License:Apache License
@Override public RepositorySystemSession getRepositorySystemSession(MavenExecutionRequest mavenExecutionRequest) throws ComponentLookupException { DefaultMaven defaultMaven = (DefaultMaven) lookup(Maven.class); return defaultMaven.newRepositorySession(mavenExecutionRequest); }
From source file:org.appformer.maven.integration.embedder.WiredComponentProvider.java
License:Apache License
@Override public RepositorySystemSession getRepositorySystemSession(MavenExecutionRequest mavenExecutionRequest) throws ComponentLookupException { DefaultMaven defaultMaven = (DefaultMaven) lookup(Maven.class); RepositorySystemSession session = defaultMaven.newRepositorySession(mavenExecutionRequest); inject(session.getArtifactTypeRegistry(), ArtifactHandlerManager.class, "handlerManager"); return session; }
From source file:org.echocat.jomon.maven.MavenEnvironmentFactory.java
License:Mozilla Public License
@Nonnull protected RepositorySystemSession createRepositorySystemSession(@Nonnull DefaultMaven maven, @Nonnull MavenExecutionRequest resultRequest) { final RepositorySystemSession repositorySystemSession = maven.newRepositorySession(resultRequest); resultRequest.getProjectBuildingRequest().setRepositorySession(repositorySystemSession); return repositorySystemSession; }
From source file:org.eclipse.che.maven.server.MavenServerImpl.java
License:Open Source License
@Override public MavenArtifact resolveArtifact(MavenArtifactKey artifactKey, List<MavenRemoteRepository> repositories) throws RemoteException { Artifact artifact = getMavenComponent(ArtifactFactory.class).createArtifactWithClassifier( artifactKey.getGroupId(), artifactKey.getArtifactId(), artifactKey.getVersion(), artifactKey.getPackaging(), artifactKey.getClassifier()); List<ArtifactRepository> repos = new ArrayList<>(); ArtifactRepositoryFactory factory = getMavenComponent(ArtifactRepositoryFactory.class); for (MavenRemoteRepository repository : repositories) { try {//from www . j av a 2 s . c om ArtifactRepository artifactRepository = ProjectUtils.buildArtifactRepository( MavenModelUtil.convertToMavenRepository(repository), factory, container); repos.add(artifactRepository); } catch (InvalidRepositoryException e) { MavenServerContext.getLogger().error(e); } } MavenExecutionRequest request = newMavenRequest(null, Collections.emptyList(), Collections.emptyList(), Collections.emptyList()); repos.forEach(request::addRemoteRepository); DefaultMaven maven = (DefaultMaven) getMavenComponent(Maven.class); RepositorySystemSession repositorySystemSession = maven.newRepositorySession(request); org.eclipse.aether.impl.ArtifactResolver artifactResolver = getMavenComponent( org.eclipse.aether.impl.ArtifactResolver.class); InternalLoggerFactory loggerFactory = new InternalLoggerFactory(); if (artifactResolver instanceof DefaultArtifactResolver) { ((DefaultArtifactResolver) artifactResolver).setLoggerFactory(loggerFactory); } org.eclipse.aether.RepositorySystem repositorySystem = getMavenComponent( org.eclipse.aether.RepositorySystem.class); if (repositorySystem instanceof DefaultRepositorySystem) { ((DefaultRepositorySystem) repositorySystem).setLoggerFactory(loggerFactory); } List<RemoteRepository> remoteRepositories = RepositoryUtils.toRepos(request.getRemoteRepositories()); remoteRepositories = repositorySystem.newResolutionRepositories(repositorySystemSession, remoteRepositories); try { ArtifactResult artifactResult = repositorySystem.resolveArtifact(repositorySystemSession, new ArtifactRequest(RepositoryUtils.toArtifact(artifact), remoteRepositories, null)); return MavenModelUtil.convertArtifact(RepositoryUtils.toArtifact(artifactResult.getArtifact()), localRepository); } catch (ArtifactResolutionException e) { MavenServerContext.getLogger().info(e); } return MavenModelUtil.convertArtifact(artifact, localRepository); }
From source file:org.eclipse.che.maven.server.MavenServerImpl.java
License:Open Source License
public void runMavenRequest(MavenExecutionRequest request, Runnable runnable) { DefaultMaven maven = (DefaultMaven) getMavenComponent(Maven.class); RepositorySystemSession repositorySystemSession = maven.newRepositorySession(request); request.getProjectBuildingRequest().setRepositorySession(repositorySystemSession); MavenSession mavenSession = new MavenSession(container, repositorySystemSession, request, new DefaultMavenExecutionResult()); LegacySupport legacySupport = getMavenComponent(LegacySupport.class); MavenSession previousSession = legacySupport.getSession(); legacySupport.setSession(mavenSession); try {/*w ww .ja v a 2s .c o m*/ for (AbstractMavenLifecycleParticipant participant : getLifecycleParticipants( Collections.emptyList())) { participant.afterSessionStart(mavenSession); } runnable.run(); } catch (MavenExecutionException e) { throw new RuntimeException(e); } finally { legacySupport.setSession(previousSession); } }
From source file:org.jetbrains.idea.maven.server.Maven30ServerEmbedderImpl.java
License:Apache License
public void executeWithMavenSession(MavenExecutionRequest request, Runnable runnable) { DefaultMaven maven = (DefaultMaven) getComponent(Maven.class); RepositorySystemSession repositorySession = maven.newRepositorySession(request); request.getProjectBuildingRequest().setRepositorySession(repositorySession); MavenSession mavenSession = new MavenSession(myContainer, repositorySession, request, new DefaultMavenExecutionResult()); LegacySupport legacySupport = getComponent(LegacySupport.class); MavenSession oldSession = legacySupport.getSession(); legacySupport.setSession(mavenSession); /** adapted from {@link DefaultMaven#doExecute(MavenExecutionRequest)} */ try {//from www . ja v a 2 s . c o m for (AbstractMavenLifecycleParticipant listener : getLifecycleParticipants( Collections.<MavenProject>emptyList())) { listener.afterSessionStart(mavenSession); } } catch (MavenExecutionException e) { throw new RuntimeException(e); } try { runnable.run(); } finally { legacySupport.setSession(oldSession); } }