Я не уверен, будет ли это обрабатываться точно так же для веб-запуска, но мы столкнулись с этой ситуацией в настольном приложении при работе с набором собственных библиотек (в нашем случае это dll).
Загрузка libA до того, как libB должна работать, если только у одной из этих библиотек нет зависимостей, которые не указаны и отсутствуют в пути. Насколько я понимаю, как только он добирается до системного вызова loadLibrary (т. Е. Java нашла библиотеку в своем java.library.path и теперь сообщает ОС, чтобы загрузить ее) - она полностью зависит от операционной системы, чтобы найти любые зависимые библиотеки. потому что в этот момент именно операционная система загружает библиотеку для процесса, а ОС знает только, как искать в системном пути. Это кажется трудно установить в случае приложения Webstart, но есть способ обойти это, не включая статическую компиляцию. Вы можете перетасовать, где находятся ваши библиотеки - я не уверен
Если вы используете пользовательский загрузчик классов, вы можете переопределить loadLibrary и findLibrary, чтобы он мог найти ваши библиотеки внутри jar-файла в вашем пути к классам, и если вы также сделаете так, чтобы он знал о ваших собственных зависимостях библиотеки (то есть libB зависит от libA зависит в libX, затем при загрузке libB вы можете поймать себя и убедиться, что сначала загрузите libA, а также при проверке этого уведомления и загрузке libX вначале. Затем ОС не пытается найти библиотеку, которой нет у вас на пути. Это немного больно, но может сработать то, что Java найдет их и загрузит все в правильном порядке.