You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kh...@apache.org on 2015/05/30 01:20:42 UTC

svn commit: r1682566 - /maven/plugins/trunk/maven-shade-plugin/src/main/java/org/apache/maven/plugins/shade/filter/MinijarFilter.java

Author: khmarbaise
Date: Fri May 29 23:20:42 2015
New Revision: 1682566

URL: http://svn.apache.org/r1682566
Log:
[MSHADE-172] java.lang.ArithmeticException: / by zero in MinijarFilter

Modified:
    maven/plugins/trunk/maven-shade-plugin/src/main/java/org/apache/maven/plugins/shade/filter/MinijarFilter.java

Modified: maven/plugins/trunk/maven-shade-plugin/src/main/java/org/apache/maven/plugins/shade/filter/MinijarFilter.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-shade-plugin/src/main/java/org/apache/maven/plugins/shade/filter/MinijarFilter.java?rev=1682566&r1=1682565&r2=1682566&view=diff
==============================================================================
--- maven/plugins/trunk/maven-shade-plugin/src/main/java/org/apache/maven/plugins/shade/filter/MinijarFilter.java (original)
+++ maven/plugins/trunk/maven-shade-plugin/src/main/java/org/apache/maven/plugins/shade/filter/MinijarFilter.java Fri May 29 23:20:42 2015
@@ -94,9 +94,8 @@ public class MinijarFilter
         removePackages( artifactUnit );
         removable.removeAll( artifactUnit.getClazzes() );
         removable.removeAll( artifactUnit.getTransitiveDependencies() );
-        removeSpecificallyIncludedClasses( project, simpleFilters == null
-            ? Collections.<SimpleFilter>emptyList()
-            : simpleFilters );
+        removeSpecificallyIncludedClasses( project, simpleFilters == null ? Collections.<SimpleFilter>emptyList()
+                        : simpleFilters );
     }
 
     private ClazzpathUnit addDependencyToClasspath( Clazzpath cp, Artifact dependency )
@@ -112,19 +111,18 @@ public class MinijarFilter
         catch ( ZipException e )
         {
             log.warn( dependency.getFile()
-                          + " could not be unpacked/read for minimization; dependency is probably malformed." );
-            IOException ioe = new IOException(
-                "Dependency " + dependency.toString() + " in file " + dependency.getFile()
-                    + " could not be unpacked. File is probably corrupt"
-            );
+                + " could not be unpacked/read for minimization; dependency is probably malformed." );
+            IOException ioe =
+                new IOException( "Dependency " + dependency.toString() + " in file " + dependency.getFile()
+                    + " could not be unpacked. File is probably corrupt" );
             ioe.initCause( e );
             throw ioe;
         }
         catch ( ArrayIndexOutOfBoundsException e )
         {
-            //trap ArrayIndexOutOfBoundsExceptions caused by malformed dependency classes (MSHADE-107)
-            log.warn(
-                dependency.toString() + " could not be analyzed for minimization; dependency is probably malformed." );
+            // trap ArrayIndexOutOfBoundsExceptions caused by malformed dependency classes (MSHADE-107)
+            log.warn( dependency.toString()
+                + " could not be analyzed for minimization; dependency is probably malformed." );
         }
         finally
         {
@@ -162,7 +160,7 @@ public class MinijarFilter
     private void removeSpecificallyIncludedClasses( MavenProject project, List<SimpleFilter> simpleFilters )
         throws IOException
     {
-        //remove classes specifically included in filters
+        // remove classes specifically included in filters
         Clazzpath checkCp = new Clazzpath();
         for ( Artifact dependency : project.getArtifacts() )
         {
@@ -220,6 +218,14 @@ public class MinijarFilter
     public void finished()
     {
         int classesTotal = classesRemoved + classesKept;
-        log.info( "Minimized " + classesTotal + " -> " + classesKept + " (" + 100 * classesKept / classesTotal + "%)" );
+        if ( classesTotal == 0 )
+        {
+            log.info( "Minimized " + classesTotal + " -> " + classesKept + " (" + 100 * classesKept / classesTotal
+                + "%)" );
+        }
+        else
+        {
+            log.info( "Minimized " + classesTotal + " -> " + classesKept );
+        }
     }
 }