/** * List the dependencies needed for compilation, those dependencies are used * to get the include paths needed for * compilation and to get the libraries paths and names needed for linking. */ @Override protected ScopeFilter getArtifactScopeFilter() { return new ScopeFilter(Artifact.SCOPE_COMPILE, null); }
/** * This method uses a Filtering technique as showed by the maven-dependency-plugin. It allows for * including/excluding artifacts in a number of ways. * * @throws MojoExecutionException */ @SuppressWarnings("unchecked") private void doDependencyResolution() throws ArtifactFilterException { FilterArtifacts filter = new FilterArtifacts(); filter.addFilter(new TransitivityFilter(project.getDependencyArtifacts(), this.excludeTransitive)); filter.addFilter(new ScopeFilter(this.includeScope, this.excludeScope)); filter.addFilter(new TypeFilter(this.includeTypes, this.excludeTypes)); filter.addFilter(new ClassifierFilter(this.includeClassifiers, this.excludeClassifiers)); filter.addFilter(new GroupIdFilter(this.includeGroupIds, this.excludeGroupIds)); filter.addFilter(new ArtifactIdFilter(this.includeArtifactIds, this.excludeArtifactIds)); // start with all artifacts. Set<Artifact> artifacts = project.getArtifacts(); if (includeSelf) { artifacts.add(project.getArtifact()); } // perform filtering dependenciesToList = filter.filter(artifacts); }
protected Set<Artifact> filterDependencies(Set<Artifact> dependencies, FilterArtifacts filters) throws MojoExecutionException { try { Set<Artifact> filtered = new LinkedHashSet<>(dependencies); filtered.retainAll(filters.filter(dependencies)); return filtered; } catch (ArtifactFilterException ex) { throw new MojoExecutionException(ex.getMessage(), ex); } }
FilterArtifacts filter = new FilterArtifacts(); filter.addFilter( new ProjectTransitivityFilter( getProject().getDependencyArtifacts(), this.excludeTransitive ) ); filter.addFilter( new ScopeFilter( DependencyUtil.cleanToBeTokenizedString( this.includeScope ), DependencyUtil.cleanToBeTokenizedString( this.excludeScope ) ) ); filter.addFilter( new TypeFilter( DependencyUtil.cleanToBeTokenizedString( this.includeTypes ), DependencyUtil.cleanToBeTokenizedString( this.excludeTypes ) ) ); filter.addFilter( new ClassifierFilter( DependencyUtil.cleanToBeTokenizedString( this.includeClassifiers ), DependencyUtil.cleanToBeTokenizedString( this.excludeClassifiers ) ) ); filter.addFilter( new GroupIdFilter( DependencyUtil.cleanToBeTokenizedString( this.includeGroupIds ), DependencyUtil.cleanToBeTokenizedString( this.excludeGroupIds ) ) ); filter.addFilter( new ArtifactIdFilter( DependencyUtil.cleanToBeTokenizedString( this.includeArtifactIds ), DependencyUtil.cleanToBeTokenizedString( this.excludeArtifactIds ) ) ); artifacts = filter.filter( artifacts ); throw new MojoExecutionException( e.getMessage(), e );
@SuppressWarnings("unchecked") public void execute() throws MojoExecutionException, MojoFailureException { FilterArtifacts filter = new FilterArtifacts(); filter.addFilter(new ScopeFilter(Artifact.SCOPE_TEST, null)); filter.addFilter(new TypeFilter("jar", null)); Set<Artifact> artifacts; try { artifacts = filter.filter(projectArtifacts); } catch (ArtifactFilterException ex) { throw new MojoExecutionException(ex.getMessage(), ex); } // create output directory with link files outputDirectory.mkdirs(); for (Artifact artifact : artifacts) { Manifest manifest = getManifest(artifact); if (manifest != null) { createLinkFile(artifact, manifest); } } // add output directory as test resource directory Resource resource = new Resource(); resource.setDirectory(outputDirectory.toString()); build.addTestResource(resource); }
final FilterArtifacts filter = new FilterArtifacts(); filter.addFilter( new org.apache.maven.shared.artifact.filter.collection.ScopeFilter( DependencyUtil.cleanToBeTokenizedString( this.includeScope ), DependencyUtil.cleanToBeTokenizedString( this.excludeScope ) ) ); filter.addFilter( new TypeFilter( DependencyUtil.cleanToBeTokenizedString( this.includeTypes ), DependencyUtil.cleanToBeTokenizedString( this.excludeTypes ) ) ); filter.addFilter( new ClassifierFilter( DependencyUtil.cleanToBeTokenizedString( this.includeClassifiers ), DependencyUtil.cleanToBeTokenizedString( this.excludeClassifiers ) ) ); filter.addFilter( new GroupIdFilter( DependencyUtil.cleanToBeTokenizedString( this.includeGroupIds ), DependencyUtil.cleanToBeTokenizedString( this.excludeGroupIds ) ) ); filter.addFilter( new ArtifactIdFilter( DependencyUtil.cleanToBeTokenizedString( this.includeArtifactIds ), DependencyUtil.cleanToBeTokenizedString( this.excludeArtifactIds ) ) );
final List<NarArtifact> narDependencies = new LinkedList<>(); FilterArtifacts filter = new FilterArtifacts(); filter.addFilter(new GroupIdFilter(cleanToBeTokenizedString(this.includeGroupIds), cleanToBeTokenizedString(this.excludeGroupIds))); filter.addFilter(new ArtifactIdFilter(cleanToBeTokenizedString(this.includeArtifactIds), cleanToBeTokenizedString(this.excludeArtifactIds))); filter.addFilter(getArtifactScopeFilter()); artifacts = filter.filter(artifacts); } catch (ArtifactFilterException e) { throw new MojoExecutionException(e.getMessage(), e);
/** * Filter the marked dependencies * * @param artifacts The artifacts set {@link Artifact}. * @return status set {@link DependencyStatusSets}. * @throws MojoExecutionException in case of an error. */ protected DependencyStatusSets filterMarkedDependencies( Set<Artifact> artifacts ) throws MojoExecutionException { // remove files that have markers already FilterArtifacts filter = new FilterArtifacts(); filter.clearFilters(); filter.addFilter( getMarkedArtifactFilter() ); Set<Artifact> unMarkedArtifacts; try { unMarkedArtifacts = filter.filter( artifacts ); } catch ( ArtifactFilterException e ) { throw new MojoExecutionException( e.getMessage(), e ); } // calculate the skipped artifacts Set<Artifact> skippedArtifacts = new LinkedHashSet<Artifact>(); skippedArtifacts.addAll( artifacts ); skippedArtifacts.removeAll( unMarkedArtifacts ); return new DependencyStatusSets( unMarkedArtifacts, null, skippedArtifacts ); }
@Override public boolean isArtifactIncluded( ArtifactItem item ) throws ArtifactFilterException { handler.setArtifact( item.getArtifact() ); try { return ( !handler.isMarkerSet() ); } catch ( MojoExecutionException e ) { throw new ArtifactFilterException( e.getMessage(), e ); } } }
/** * List the dependencies needed for compilation, those dependencies are used * to get the include paths needed for * compilation and to get the libraries paths and names needed for linking. */ @Override protected ScopeFilter getArtifactScopeFilter() { return new ScopeFilter( Artifact.SCOPE_COMPILE, null ); }
@Override public boolean isArtifactIncluded( ArtifactItem item ) throws ArtifactFilterException { Artifact artifact = item.getArtifact(); boolean overWrite = ( artifact.isSnapshot() && this.overWriteSnapshots ) || ( !artifact.isSnapshot() && this.overWriteReleases ); handler.setArtifact( artifact ); try { return overWrite || !handler.isMarkerSet() || ( overWriteIfNewer && handler.isMarkerOlder( artifact ) ); } catch ( MojoExecutionException e ) { throw new ArtifactFilterException( e.getMessage(), e ); } }
/** * List the dependencies needed for integration tests executions, those * dependencies are used to declare the paths * of shared and jni libraries in java.library.path */ @Override protected ScopeFilter getArtifactScopeFilter() { return new ScopeFilter( Artifact.SCOPE_TEST, null ); }
/** * List the dependencies we want to assemble */ @Override protected ScopeFilter getArtifactScopeFilter() { // Was Artifact.SCOPE_RUNTIME + provided? // Think Provided isn't appropriate in Assembly - otherwise it isn't provided. return new ScopeFilter( Artifact.SCOPE_RUNTIME, null ); }
/** * List the dependencies needed for tests executions and for executables * executions, those dependencies are used * to declare the paths of shared libraries for execution. */ @Override protected ScopeFilter getArtifactScopeFilter() { return new ScopeFilter( Artifact.SCOPE_TEST, null ); }
/** * List the dependencies needed for tests compilations and executions. */ @Override protected ScopeFilter getArtifactScopeFilter() { return new ScopeFilter( Artifact.SCOPE_TEST, null ); }
/** * List the dependencies needed for tests compilations, those dependencies are * used to get the include paths needed * for compilation and to get the libraries paths and names needed for * linking. */ @Override protected ScopeFilter getArtifactScopeFilter() { // Was Artifact.SCOPE_TEST - runtime?? return new ScopeFilter( Artifact.SCOPE_TEST, null ); }
/** * List the dependencies needed for compilation. */ @Override protected ScopeFilter getArtifactScopeFilter() { return new ScopeFilter( Artifact.SCOPE_COMPILE, null ); }
/** * List all the dependencies which are needed by the project (for compilation, * tests, and execution). */ @Override protected ScopeFilter getArtifactScopeFilter() { return new ScopeFilter( Artifact.SCOPE_TEST, null ); }
/** * List all the dependencies of the project. */ @Override protected ScopeFilter getArtifactScopeFilter() { return new ScopeFilter( Artifact.SCOPE_TEST, null ); }
private ArtifactsFilter[] getAdditionalFilters() { List<ArtifactsFilter> filters = new ArrayList<>(); if (this.excludeDevtools) { Exclude exclude = new Exclude(); exclude.setGroupId("org.springframework.boot"); exclude.setArtifactId("spring-boot-devtools"); ExcludeFilter filter = new ExcludeFilter(exclude); filters.add(filter); } if (!this.includeSystemScope) { filters.add(new ScopeFilter(null, Artifact.SCOPE_SYSTEM)); } return filters.toArray(new ArtifactsFilter[0]); }