final List<String> filterItems = Collections.singletonList(String.format("%s:%s", project.getGroupId(), project.getArtifactId())); final ProjectBuildingRequest buildingRequest = newResolveArtifactProjectBuildingRequest(); buildingRequest.setProject(project);
@Mojo(name = "foo", requiresDependencyResolution = ResolutionScope.RUNTIME) public class MyMojo extends AbstractMojo { @Parameter(defaultValue = "${project}", readonly = true, required = true) private MavenProject project; @Parameter(defaultValue = "${session}", readonly = true, required = true) private MavenSession session; @Component private ProjectBuilder projectBuilder; public void execute() throws MojoExecutionException, MojoFailureException { ProjectBuildingRequest buildingRequest = new DefaultProjectBuildingRequest(session.getProjectBuildingRequest()); try { for (Artifact artifact : project.getArtifacts()) { buildingRequest.setProject(null); MavenProject mavenProject = projectBuilder.build(artifact, buildingRequest).getProject(); System.out.println(mavenProject.getName()); } } catch (ProjectBuildingException e) { throw new MojoExecutionException("Error while building project", e); } } }
buildingRequest.setProject( reactorProject );
try session.getProjectBuildingRequest().setProject( project ); DependencyNode node = dependencyGraphBuilder .buildDependencyGraph( session.getProjectBuildingRequest(), null ); session.getProjectBuildingRequest().setProject( original );
new DefaultProjectBuildingRequest(session.getProjectBuildingRequest()); buildingRequest.setProject(project);
new DefaultProjectBuildingRequest( session.getProjectBuildingRequest() ); buildingRequest.setProject( project );
ProjectBuildingRequest buildingRequest = new DefaultProjectBuildingRequest(session.getProjectBuildingRequest()); buildingRequest.setValidationLevel(ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL); buildingRequest.setProject(null); MavenProject mavenProject = projectBuilder.build(artifact, buildingRequest).getProject(); return mavenProject.getDependencies();
@Override public MavenProject getProject() { ProjectBuildingRequest buildingRequest = new DefaultProjectBuildingRequest(this.session.getProjectBuildingRequest()); buildingRequest.setRepositorySession(this.session.getRepositorySession()); buildingRequest.setProject(null); buildingRequest.setResolveDependencies(true); buildingRequest.setActiveProfileIds(this.profiles); DefaultArtifact artifact = new DefaultArtifact(this.groupId, this.artifactId, this.version, "compile", this.type, this.classifier, new DefaultArtifactHandler()); try { return this.projectBuilder.build(artifact, buildingRequest).getProject(); } catch (ProjectBuildingException e) { throw new IllegalStateException("Error while creating Maven project from Artifact '" + artifact + "'.", e); } } }