From d5018729d8136c0ac558021f3461310b3e6f0740 Mon Sep 17 00:00:00 2001 From: ericek111 Date: Thu, 13 Aug 2026 23:47:03 +0000 Subject: [PATCH] Slim the shaded jar from 7.3 MB down to 2.0 MB Three things bloated it. Nothing tree-shook the dependencies, so all of bcprov shipped even though only its lightweight API (AES-EAX, ECDSA over prime256v1, ASN.1, EC point math) is ever touched. Its multi-release copies under META-INF/versions accounted for another 2.3 MB that could never even load, since the shaded jar is not itself multi-release. And ts3j dragged in commons-lang and dnsjava for one call each. Enable minimizeJar, keeping our own modules and ts3j whole (they are the entry points, and ts3j instantiates packet bodies reflectively), and drop the versioned entries. The shade plugin has to move to 3.6.2 for this: 3.5.1 bundles an ASM that cannot read class file major version 70. The remaining large entry is the bundled Windows Opus DLL, at 612 KB. Co-Authored-By: Claude Opus 5 --- ts3-client/swing/pom.xml | 26 +++++++++++++++++++++++++- ts3j | 2 +- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/ts3-client/swing/pom.xml b/ts3-client/swing/pom.xml index 042254a..3ae2101 100644 --- a/ts3-client/swing/pom.xml +++ b/ts3-client/swing/pom.xml @@ -39,7 +39,7 @@ org.apache.maven.plugins maven-shade-plugin - 3.5.1 + 3.6.2 package @@ -47,10 +47,34 @@ shade + + true + + + com.ts3client:* + + ** + + + + com.github.manevolent:ts3j + + ** + + *:* + + META-INF/versions/** META-INF/*.SF META-INF/*.DSA META-INF/*.RSA diff --git a/ts3j b/ts3j index db57d60..dce4e68 160000 --- a/ts3j +++ b/ts3j @@ -1 +1 @@ -Subproject commit db57d60c989e399626aa16d921390f5033e6cdeb +Subproject commit dce4e681500c85efdf9b9f680da8e31c19bf2d08