@Override public boolean matches(DependencyTree dependencyTree) { boolean result = false; if (!getDependencyTreeFilter().matches(dependencyTree)) { try { Feature feature = Features.getFeatureForBundle(service.listFeatures(), dependencyTree); if (feature != null) { String replacement = String.format("%s/%s", feature.getName(), feature.getVersion()); features.add(replacement); LOG.info( String.format( "Installing feature %s for maven dependency %s/%s/%s", replacement, dependencyTree.getGroupId(), dependencyTree.getArtifactId(), dependencyTree.getVersion())); result = true; } } catch (Exception e) { LOG.debug( String.format( "Unable to retrieve features information while processing dependency %s", dependencyTree.getArtifactId()), e); } } return result; }