/** * @param mavenHome * @return the maven version * @throws MavenEmbedderException */ public static MavenInformation getMavenVersion(File mavenHome) throws MavenEmbedderException { ClassRealm realm = buildClassRealm( mavenHome, null, null ); if (debug) { debugMavenVersion(realm); } ClassLoader original = Thread.currentThread().getContextClassLoader(); InputStream inputStream = null; try { Thread.currentThread().setContextClassLoader( realm ); URL resource = realm.findResource( POM_PROPERTIES_PATH ); inputStream = resource.openStream(); Properties properties = new Properties(); properties.load( inputStream ); return new MavenInformation( properties.getProperty( "version" ) , resource.toExternalForm() ); } catch ( IOException e ) { throw new MavenEmbedderException( e.getMessage(), e ); } finally { IOUtil.close( inputStream ); Thread.currentThread().setContextClassLoader( original ); } }
public Artifact createArtifact( String groupId, String artifactId, String version, String scope, String type ) throws MavenEmbedderException { try { RepositorySystem repositorySystem = lookup( RepositorySystem.class ); return repositorySystem.createArtifact( groupId, artifactId, version, scope, type ); } catch ( ComponentLookupException e ) { throw new MavenEmbedderException(e.getMessage(), e); } }
public Artifact createArtifactWithClassifier(String groupId, String artifactId, String version, String type, String classifier) throws MavenEmbedderException { try { RepositorySystem repositorySystem = lookup(RepositorySystem.class); return repositorySystem.createArtifactWithClassifier(groupId, artifactId, version, type, classifier); } catch (ComponentLookupException e) { throw new MavenEmbedderException(e.getMessage(), e); } }
public Artifact createArtifactWithClassifier( String groupId, String artifactId, String version, String type, String classifier ) throws MavenEmbedderException { try { RepositorySystem repositorySystem = lookup( RepositorySystem.class ); return repositorySystem.createArtifactWithClassifier( groupId, artifactId, version, type, classifier ); } catch ( ComponentLookupException e ) { throw new MavenEmbedderException(e.getMessage(), e); } }
public Artifact createArtifact(String groupId, String artifactId, String version, String scope, String type) throws MavenEmbedderException { try { RepositorySystem repositorySystem = lookup(RepositorySystem.class); return repositorySystem.createArtifact(groupId, artifactId, version, scope, type); } catch (ComponentLookupException e) { throw new MavenEmbedderException(e.getMessage(), e); } }
classRealm.addURL( jarFile.toURI().toURL() ); } catch ( MalformedURLException e ) { throw new MavenEmbedderException( e.getMessage(), e );
public List<ProjectBuildingResult> buildProjects(File mavenProject, boolean recursive) throws ProjectBuildingException, MavenEmbedderException { ClassLoader originalCl = Thread.currentThread().getContextClassLoader(); try { Thread.currentThread().setContextClassLoader(this.plexusContainer.getContainerRealm()); ProjectBuilder projectBuilder = lookup(ProjectBuilder.class); ProjectBuildingRequest projectBuildingRequest = this.mavenExecutionRequest.getProjectBuildingRequest(); projectBuildingRequest.setValidationLevel(this.mavenRequest.getValidationLevel()); RepositorySystemSession repositorySystemSession = buildRepositorySystemSession(); projectBuildingRequest.setRepositorySession(repositorySystemSession); projectBuildingRequest.setProcessPlugins(this.mavenRequest.isProcessPlugins()); projectBuildingRequest.setResolveDependencies(this.mavenRequest.isResolveDependencies()); List<ProjectBuildingResult> results = projectBuilder.build(Arrays.asList(mavenProject), recursive, projectBuildingRequest); return results; } catch (ComponentLookupException e) { throw new MavenEmbedderException(e.getMessage(), e); } finally { Thread.currentThread().setContextClassLoader(originalCl); } }
public ProjectBuildingResult buildProject(File mavenProject) throws ProjectBuildingException, MavenEmbedderException { ClassLoader originalCl = Thread.currentThread().getContextClassLoader(); try { Thread.currentThread().setContextClassLoader(this.plexusContainer.getContainerRealm()); ProjectBuilder projectBuilder = lookup(ProjectBuilder.class); ProjectBuildingRequest projectBuildingRequest = this.mavenExecutionRequest.getProjectBuildingRequest(); projectBuildingRequest.setValidationLevel(this.mavenRequest.getValidationLevel()); RepositorySystemSession repositorySystemSession = buildRepositorySystemSession(); projectBuildingRequest.setRepositorySession(repositorySystemSession); projectBuildingRequest.setProcessPlugins(this.mavenRequest.isProcessPlugins()); projectBuildingRequest.setResolveDependencies(this.mavenRequest.isResolveDependencies()); return projectBuilder.build(mavenProject, projectBuildingRequest); } catch (ComponentLookupException e) { throw new MavenEmbedderException(e.getMessage(), e); } finally { Thread.currentThread().setContextClassLoader(originalCl); } }
public List<ProjectBuildingResult> buildProjects( File mavenProject, boolean recursive ) throws ProjectBuildingException, MavenEmbedderException { ClassLoader originalCl = Thread.currentThread().getContextClassLoader(); try { Thread.currentThread().setContextClassLoader( this.plexusContainer.getContainerRealm() ); ProjectBuilder projectBuilder = lookup( ProjectBuilder.class ); ProjectBuildingRequest projectBuildingRequest = this.mavenExecutionRequest.getProjectBuildingRequest(); projectBuildingRequest.setValidationLevel( this.mavenRequest.getValidationLevel() ); RepositorySystemSession repositorySystemSession = buildRepositorySystemSession(); projectBuildingRequest.setRepositorySession( repositorySystemSession ); projectBuildingRequest.setProcessPlugins( this.mavenRequest.isProcessPlugins() ); projectBuildingRequest.setResolveDependencies( this.mavenRequest.isResolveDependencies() ); List<ProjectBuildingResult> results = projectBuilder.build( Arrays.asList(mavenProject), recursive, projectBuildingRequest ); return results; } catch(ComponentLookupException e) { throw new MavenEmbedderException(e.getMessage(), e); } finally { Thread.currentThread().setContextClassLoader( originalCl ); } }
private DependencyResolvingMavenEmbedder(File mavenHome, MavenRequest mavenRequest, PlexusContainer plexusContainer) throws MavenEmbedderException { this.mavenHome = mavenHome; this.mavenRequest = mavenRequest; this.plexusContainer = plexusContainer; try { this.buildMavenExecutionRequest(); RepositorySystemSession rss = ((DefaultMaven) lookup(Maven.class)).newRepositorySession(mavenExecutionRequest); mavenSession = new MavenSession(plexusContainer, rss, mavenExecutionRequest, new DefaultMavenExecutionResult()); lookup(LegacySupport.class).setSession(mavenSession); } catch (MavenEmbedderException e) { throw new MavenEmbedderException(e.getMessage(), e); } catch (ComponentLookupException e) { throw new MavenEmbedderException(e.getMessage(), e); } }
private MavenEmbedder( File mavenHome, MavenRequest mavenRequest, PlexusContainer plexusContainer ) throws MavenEmbedderException { this.mavenHome = mavenHome; this.mavenRequest = mavenRequest; this.plexusContainer = plexusContainer; try { this.buildMavenExecutionRequest(); RepositorySystemSession rss = ((DefaultMaven) lookup(Maven.class)).newRepositorySession(mavenExecutionRequest); mavenSession = new MavenSession( plexusContainer, rss, mavenExecutionRequest, new DefaultMavenExecutionResult() ); lookup(LegacySupport.class).setSession(mavenSession); } catch (MavenEmbedderException e) { throw new MavenEmbedderException(e.getMessage(), e); } catch (ComponentLookupException e) { throw new MavenEmbedderException(e.getMessage(), e); } }
public Settings getSettings() throws MavenEmbedderException, ComponentLookupException { SettingsBuildingRequest settingsBuildingRequest = new DefaultSettingsBuildingRequest(); if (this.mavenRequest.getGlobalSettingsFile() != null) { settingsBuildingRequest.setGlobalSettingsFile(new File(this.mavenRequest.getGlobalSettingsFile())); } else { settingsBuildingRequest.setGlobalSettingsFile(MavenCli.DEFAULT_GLOBAL_SETTINGS_FILE); } if (this.mavenRequest.getUserSettingsFile() != null) { settingsBuildingRequest.setUserSettingsFile(new File(this.mavenRequest.getUserSettingsFile())); } else { settingsBuildingRequest.setUserSettingsFile(MavenCli.DEFAULT_USER_SETTINGS_FILE); } settingsBuildingRequest.setUserProperties(this.mavenRequest.getUserProperties()); settingsBuildingRequest.getSystemProperties().putAll(System.getProperties()); settingsBuildingRequest.getSystemProperties().putAll(this.mavenRequest.getSystemProperties()); settingsBuildingRequest.getSystemProperties().putAll(getEnvVars()); try { return lookup(SettingsBuilder.class).build(settingsBuildingRequest).getEffectiveSettings(); } catch (SettingsBuildingException e) { throw new MavenEmbedderException(e.getMessage(), e); } }
public Settings getSettings() throws MavenEmbedderException, ComponentLookupException { SettingsBuildingRequest settingsBuildingRequest = new DefaultSettingsBuildingRequest(); if ( this.mavenRequest.getGlobalSettingsFile() != null ) { settingsBuildingRequest.setGlobalSettingsFile( new File( this.mavenRequest.getGlobalSettingsFile() ) ); } else { settingsBuildingRequest.setGlobalSettingsFile( MavenCli.DEFAULT_GLOBAL_SETTINGS_FILE ); } if ( this.mavenRequest.getUserSettingsFile() != null ) { settingsBuildingRequest.setUserSettingsFile( new File( this.mavenRequest.getUserSettingsFile() ) ); } else { settingsBuildingRequest.setUserSettingsFile( MavenCli.DEFAULT_USER_SETTINGS_FILE ); } settingsBuildingRequest.setUserProperties( this.mavenRequest.getUserProperties() ); settingsBuildingRequest.getSystemProperties().putAll( System.getProperties() ); settingsBuildingRequest.getSystemProperties().putAll( this.mavenRequest.getSystemProperties() ); settingsBuildingRequest.getSystemProperties().putAll( getEnvVars() ); try { return lookup( SettingsBuilder.class ).build( settingsBuildingRequest ).getEffectiveSettings(); } catch ( SettingsBuildingException e ) { throw new MavenEmbedderException( e.getMessage(), e ); } }
private static PlexusContainer buildPlexusContainer(MavenRequest mavenRequest,ContainerConfiguration containerConfiguration ) throws MavenEmbedderException { try { DefaultPlexusContainer plexusContainer = new DefaultPlexusContainer( containerConfiguration ); if (mavenRequest.getMavenLoggerManager() != null) { plexusContainer.setLoggerManager( mavenRequest.getMavenLoggerManager() ); } if (mavenRequest.getLoggingLevel() > 0) { plexusContainer.getLoggerManager().setThreshold( mavenRequest.getLoggingLevel() ); } return plexusContainer; } catch ( PlexusContainerException e ) { throw new MavenEmbedderException( e.getMessage(), e ); } }
throw new MavenEmbedderException(e.getMessage(), e);
throw new MavenEmbedderException( e.getMessage(), e );