Class JarPatcher

java.lang.Object
com.hloader.patch.JarPatcher

public final class JarPatcher extends Object
It adds a Launcher-Agent-Class (and Premain-Class) manifest attribute so the JVM itself attaches hloader as a java.lang.instrument agent before the target's own main() runs, then embeds hloader's own runtime (agent, mod loader, Mixin, and their dependencies) into the target jar so the result runs completely standalone via java -jar.
  • Method Details

    • patch

      public static void patch(Path inputJar, Path outputJar, String explicitMainClass) throws IOException
      explicitMainClass may be null to use whatever the jar's own manifest already declares - see the other overload's doc for why that's often not there at all.
      Throws:
      IOException