use of org.eclipse.aether.repository.LocalRepository in project swagger-core by swagger-api.
the class BetterAbstractMojoTestCase method newMavenSession.
protected MavenSession newMavenSession() {
try {
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);
}
}
use of org.eclipse.aether.repository.LocalRepository in project spf4j by zolyfarkas.
the class MavenRepositoryUtils method getRepositorySystemSession.
public static RepositorySystemSession getRepositorySystemSession(final RepositorySystem system, final File localRepoPath) {
DefaultRepositorySystemSession repositorySystemSession = MavenRepositorySystemUtils.newSession();
LocalRepository localRepository = new LocalRepository(localRepoPath);
repositorySystemSession.setLocalRepositoryManager(system.newLocalRepositoryManager(repositorySystemSession, localRepository));
repositorySystemSession.setRepositoryListener(new AbstractRepositoryListener() {
@Override
public void artifactDownloaded(final RepositoryEvent event) {
LOG.info("Downloaded artifact {}", event);
}
});
return repositorySystemSession;
}
Aggregations