Reducing tamanho do arquivo jar? [duplicado

Esta pergunta já tem uma resposta aqui:

Minimizar tamanhos de dependência de jar 3 respostas

Existe um bom aplicativo para reduzir o tamanho do arquivo jar, eliminando classes / métodos / elementos de pool constantes redundantes? (ou seja, inacessível a partir de um conjunto fixo de pontos de entrada, supondo que não haja reflexão)

Estou cansado de usar bibliotecas inchadas quando estou usando apenas alguns métodos dela

(Não estou falando de pequenas otimizações "locais", como tornar os nomes menores. Estou pensando em algo que faz uma análise global para descobrir quais classes / métodos / variáveis são usadas, dado um conjunto de pontos de entrada (incluindo reflexivos pontos de entrada) e remove tudo o que não é usad

Meu webapp tem 45 MB, principalmente devido a 30 bibliotecas diferentes, e tenho certeza de que estou usando apenas uma pequena fração de cada bibliotec

questionAnswers(3)

yourAnswerToTheQuestion