use of org.vafer.jdependency.Clazzpath in project maven-plugins by apache.
the class MinijarFilter method removeSpecificallyIncludedClasses.
private void removeSpecificallyIncludedClasses(MavenProject project, List<SimpleFilter> simpleFilters) throws IOException {
// remove classes specifically included in filters
Clazzpath checkCp = new Clazzpath();
for (Artifact dependency : project.getArtifacts()) {
File jar = dependency.getFile();
for (SimpleFilter simpleFilter : simpleFilters) {
if (simpleFilter.canFilter(jar)) {
ClazzpathUnit depClazzpathUnit = addDependencyToClasspath(checkCp, dependency);
if (depClazzpathUnit != null) {
Set<Clazz> clazzes = depClazzpathUnit.getClazzes();
Iterator<Clazz> j = removable.iterator();
while (j.hasNext()) {
Clazz clazz = j.next();
if (//
clazzes.contains(clazz) && simpleFilter.isSpecificallyIncluded(clazz.getName().replace('.', '/'))) {
log.info(clazz.getName() + " not removed because it was specifically included");
j.remove();
}
}
}
}
}
}
}
Aggregations