in src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java [1716:1770]
private void addResources(
final Collection<ArtifactInfo> infos,
final List<File> resources,
final JarArchiver jarArchiver,
final List<Source> sources) {
for (final ArtifactInfo info : infos) {
if (info.getBinDirectory() != null) {
final int prefixLength =
info.getBinDirectory().getAbsolutePath().length() + 1;
for (final File resource : info.getIncludedResources()) {
final String name = resource.getAbsolutePath().substring(prefixLength);
getLog().debug("Adding resource " + name);
if (jarArchiver != null) {
jarArchiver.addFile(resource, name);
}
if (sources != null) {
sources.add(new FileSource(info.getBinDirectory(), resource));
}
}
}
}
// add additional resources
if (resources != null) {
for (final File rsrc : resources) {
getLog().debug("Adding resource " + rsrc);
if (rsrc.isDirectory()) {
DirectoryScanner ds = new DirectoryScanner();
ds.setBasedir(rsrc);
ds.setIncludes("**/*.*");
ds.scan();
if (jarArchiver != null) {
for (String includedFile : ds.getIncludedFiles()) {
jarArchiver.addFile(new File(rsrc, includedFile), includedFile);
}
}
if (sources != null) {
final DefaultFileSet fileSet = new DefaultFileSet(rsrc);
fileSet.setIncludingEmptyDirectories(false);
fileSet.setIncludes(new String[] {"**/*.*"});
sources.add(new DirectorySource(fileSet));
}
} else {
if (jarArchiver != null) {
jarArchiver.addFile(rsrc, rsrc.getName());
}
if (sources != null) {
sources.add(new FileSource(rsrc.getParentFile(), rsrc));
}
}
}
}
}