Skip to content

minimize shaded JAR #1416

@abyrd

Description

@abyrd

We use the shade plugin (called shadow in Gradle) to combine OTP with its dependencies into a single JAR. This includes all the classes in those dependencies, even ones that are not used by OTP. Shade has a <minimizeJar>true</minimizeJar> parameter which attempts to remove unused classes. Experiments indicate this will probably reduce the size of otp.jar by roughly half to around 20MB.

Unfortunately even though we are now explicitly assembling the Jersey application and its optional features instead of relying on autoscanning, there is still some code (at least in Grizzly) that imports classes by mysterious reflective means that minimizeJar doesn't detect.

Someday we should get this working because it will make our distribution half as big.

Metadata

Metadata

Assignees

Labels

!ImprovementA functional improvement or micro featureStaleThis issue is stale, no activity for 90 days. Remove stale label or comment within 30 days.

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions