Заархивируйте их, используя «стандартное сжатие» или используя pack200 - единственные два формата сжатия, понятные JVM.Инструмент Jar , конечно, отлично подходит для этой цели.Я бы вообще назвал это из скрипта сборки Ant.
Один отличный способ уменьшить размер классов распространяемого кода - это запутать код.Хотя в конечном итоге неэффективно обеспечить «защиту кода», для которой они обычно используются, запутывание обычно делает двоичные файлы значительно (на 40–60%) меньше.
файл библиотеки для моегоapp .. у него есть dj native swing и другие классы, такие как ppt reader и т. д. *
Попробуйте попробовать запутывание и стандартное сжатие.Сообщите размер и успех / неудачу загрузки и проверки.
Поскольку это, очевидно, настольное приложение, также рассмотрите возможность разделения приложения.в отдельные Jars и лениво доставляя их, используя Java Web Start .Это означает, что они загружаются только при необходимости.Например, читатель PPT может быть для справочной системы.Нет необходимости загружать справку для приложения.чтобы попасть на экран, только если они нажали F1
При ленивой загрузке файлы PPT и файлы справки будут загружаться только тогда, когда пользователь запросил справкузатем с диалоговым окном прогресса.
Еще лучше, если API получает обновление, просто загрузите обновленный Jar на сервер, и JWS автоматически обновит версию на клиенте (при необходимости - например, он не будет обновлять какие-либо«ленивые» банки, которые еще не были кэшированы).