Class OptimizedJarBuilder


  • public class OptimizedJarBuilder
    extends java.lang.Object
    • Constructor Detail

      • OptimizedJarBuilder

        public OptimizedJarBuilder​(boolean debugModeEnabled,
                                   byte[] jarBytes)
        Initializes a new instance of OptimizedJarBuilder, which allows desired optimization steps to be enabled and performed
        Parameters:
        debugModeEnabled - Indicates if debug data and names need to be preserved
        jarBytes - Byte array corresponding to the jar
      • OptimizedJarBuilder

        public OptimizedJarBuilder​(boolean debugModeEnabled,
                                   byte[] jarBytes,
                                   boolean stripLineNumber)
    • Method Detail

      • withUnreachableMethodRemover

        public OptimizedJarBuilder withUnreachableMethodRemover()
        Removes methods not reachable from main method
        Returns:
        OptimizedJarBuilder
      • withRenamer

        public OptimizedJarBuilder withRenamer()
        Renames all the class, method, and field names to smaller names (starting from character names)
        Returns:
        OptimizedJarBuilder
      • getOptimizedBytes

        public byte[] getOptimizedBytes()
        Performs selected optimization steps. Unreferenced classes are removed from the Jar for all cases.
        Returns:
        optimized jar bytes