Я хотел бы знать, возможно ли написать задачу Ant (используя, при необходимости, другую библиотеку), чтобы уменьшить JAR-файл, чтобы он содержал только определенные классы и те, от которых они зависят.
Например, у меня есть JAR, содержащий классы A, B, C и D, где A и B оба расширяют C. D не зависит от других.Я хотел бы указать для задачи Ant, что мне нужен только класс B, и получить файл JAR, содержащий только B и C.
Я видел этот ответ который предоставляет простой способ сказать «Я не хочу A и D», и я полагаю, что замена «исключает» на «включает» позволила бы мне указать «Я хочу B и C» следующим образом:
<jar destfile="stripped.jar">
<zipfileset src="full.jar" includes="path/B.class;path/C.class"/>
</jar>
... но есть ли способ сделать это с учетом зависимостей, чтобы я мог сказать «Я хочу B», но в итоге получился JAR, содержащий B и его зависимости?