Предполагается, что у меня есть следующие классы Java:
Foo.java:
package my.small.question;
import my.common.stuff.Bar;
public class Foo {
private Bar bar;
public Foo(Bar bar) {
this.bar = bar;
bar.init();
}
}
Bar.java:
package my.common.stuff;
import my.algorithms.SpecialSauce;
public class Bar {
private SpecialSauce yum;
public Bar() {
this.yum = new SpecialSauce(888) ;
yum.bake();
}
}
Если я хочу создать один исполняемый jar из Foo.class
, мне нужно иметь в нем зависимые пакеты - Bar.class
& SpecialSauce.class
НО общий пакет имеет много других классов (Baz.class
, Baq.class
и т. Д.)...), которые не используются ни в какой форме потока Foo.class
, а также в пакете my.algorithms
есть много других ненужных алгоритмов - у вас есть идея ...
Мой вопрос
Как автоматически (инструмент?) Я могу сделать тонкий jar из Foo.java , который будет содержать только обязательные классы и их зависимости (рекурсивно) и ничего больше?