This is an automated email from the ASF dual-hosted git repository.

cziegeler pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/sling-slingfeature-maven-plugin.git

commit 09a422193175af0670ff92a660ac5943c41d26cd
Author: Carsten Ziegeler <[email protected]>
AuthorDate: Wed May 13 12:56:15 2020 +0200

    SLING-9437 : Correct detection of missing and wrong packages
---
 .../apache/sling/feature/maven/mojos/ApisJarMojo.java  | 18 +++++++++++-------
 .../sling/feature/maven/mojos/FeatureLauncherMojo.java | 12 +++++++++++-
 2 files changed, 22 insertions(+), 8 deletions(-)

diff --git 
a/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java 
b/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java
index a43ec27..d9fdc7d 100644
--- a/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java
+++ b/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java
@@ -518,13 +518,13 @@ public class ApisJarMojo extends 
AbstractIncludingFeatureMojo {
 
             if (generateApiJar) {
                 final File apiJar = createArchive(ctx, apiRegion, 
ArtifactType.APIS, this.apiResources,
-                        ctx.getArtifactInfos(apiRegion, 
this.useApiDependencies));
+                        ctx.getArtifactInfos(apiRegion, 
this.useApiDependencies), report);
                 report(ctx, apiJar, ArtifactType.APIS, apiRegion, 
this.useApiDependencies, report, null);
             }
 
             if (generateSourceJar) {
                 final File sourceJar = createArchive(ctx, apiRegion, 
ArtifactType.SOURCES, this.apiSourceResources,
-                        ctx.getArtifactInfos(apiRegion, 
this.useApiDependencies));
+                        ctx.getArtifactInfos(apiRegion, 
this.useApiDependencies), report);
                 report(ctx, sourceJar, ArtifactType.SOURCES, apiRegion, 
this.useApiDependencies, report, null);
             }
 
@@ -539,7 +539,7 @@ public class ApisJarMojo extends 
AbstractIncludingFeatureMojo {
                 final Collection<ArtifactInfo> infos = generateJavadoc(ctx, 
apiRegion, links, javadocsDir);
                 if ( infos != null ) {
                     ctx.setJavadocDir(javadocsDir);
-                    final File javadocJar = createArchive(ctx, apiRegion, 
ArtifactType.JAVADOC, this.apiJavadocResources, infos);
+                    final File javadocJar = createArchive(ctx, apiRegion, 
ArtifactType.JAVADOC, this.apiJavadocResources, infos, report);
                     report(ctx, javadocJar, ArtifactType.JAVADOC, apiRegion, 
false, report, links);
                 } else {
                     getLog().warn("Javadoc JAR will NOT be generated - sources 
directory " + ctx.getDeflatedSourcesDir()
@@ -1483,7 +1483,8 @@ public class ApisJarMojo extends 
AbstractIncludingFeatureMojo {
             final ApiRegion apiRegion,
             final ArtifactType archiveType,
             final List<File> resources,
-            final Collection<ArtifactInfo> infos) throws 
MojoExecutionException {
+            final Collection<ArtifactInfo> infos,
+            final List<String> report) throws MojoExecutionException {
         final JarArchiver jarArchiver = new JarArchiver();
 
         if ( archiveType == ArtifactType.APIS || archiveType == 
ArtifactType.SOURCES ) {
@@ -1537,7 +1538,7 @@ public class ApisJarMojo extends 
AbstractIncludingFeatureMojo {
 
         // check for license report
         if ( this.licenseReport != null ) {
-            final File out = this.createLicenseReport(ctx, apiRegion, infos);
+            final File out = this.createLicenseReport(ctx, apiRegion, infos, 
report);
             jarArchiver.addFile(out, this.licenseReport);
         }
 
@@ -1808,7 +1809,10 @@ public class ApisJarMojo extends 
AbstractIncludingFeatureMojo {
         return Collections.singletonMap(packages, 
otherPackages).entrySet().iterator().next();
     }
 
-    private File createLicenseReport(final ApisJarContext ctx, final ApiRegion 
region, final Collection<ArtifactInfo> infos) throws MojoExecutionException {
+    private File createLicenseReport(final ApisJarContext ctx,
+            final ApiRegion region,
+            final Collection<ArtifactInfo> infos,
+            final List<String> report) throws MojoExecutionException {
         final File out = new File(this.getTmpDir(), region.getName() + 
"-license-report.txt");
         if ( !out.exists() ) {
 
@@ -1838,7 +1842,7 @@ public class ApisJarMojo extends 
AbstractIncludingFeatureMojo {
                                         .map(l -> l.getName().concat(" 
(").concat(l.getUrl()).concat(")"))
                                         .collect(Collectors.toList())));
                     } else {
-                        getLog().warn("No license info found for " + 
info.getId().toMvnId());
+                        report.add("No license info found for 
".concat(info.getId().toMvnId()));
                     }
                 }
                 if ( !exclude ) {
diff --git 
a/src/main/java/org/apache/sling/feature/maven/mojos/FeatureLauncherMojo.java 
b/src/main/java/org/apache/sling/feature/maven/mojos/FeatureLauncherMojo.java
index 2abf6cc..f295766 100644
--- 
a/src/main/java/org/apache/sling/feature/maven/mojos/FeatureLauncherMojo.java
+++ 
b/src/main/java/org/apache/sling/feature/maven/mojos/FeatureLauncherMojo.java
@@ -37,6 +37,16 @@ import java.util.Collection;
 import java.util.List;
 import java.util.Set;
 
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
+import org.apache.maven.plugins.annotations.Mojo;
+import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.sling.feature.ArtifactId;
+import org.apache.sling.feature.Feature;
+import org.apache.sling.feature.io.json.FeatureJSONWriter;
+
+import com.google.common.io.Files;
+
 /**
  * Launches the given Feature File
  */
@@ -216,7 +226,7 @@ public class FeatureLauncherMojo extends 
AbstractIncludingFeatureMojo {
 
     void launch(String[] arguments) throws MojoExecutionException {
         try {
-            Class clazz = 
Thread.currentThread().getContextClassLoader().loadClass(
+            Class<?> clazz = 
Thread.currentThread().getContextClassLoader().loadClass(
                 "org.apache.sling.feature.launcher.impl.Main"
             );
             Method main = clazz.getMethod("main", String[].class);

Reply via email to