У меня есть две подписанные банки: a.jar и b.jar.
a.jar запускается как апплет внутри браузера, а b.jar находится в Appdata / locallow / xyz (Vista). a добавляет b к своему classpath и вызывает некоторые функции b.jar. Все идет нормально. Теперь b распаковывает некоторые библиотеки в рабочий каталог и зависит от них. Это должен быть рабочий каталог, поскольку библиотеки DLL ссылаются друг на друга, поэтому альтернативный каталог невозможен.
Плохо то, что рабочий каталог (user.dir) в Firefox - это «c: \ program files \ mozilla firefox» ... Так что мое приложение работает, пока у пользователя есть права администратора. Но как только обычный пользователь запускает апплет, он падает, так как приложение хочет распаковать dll. И в любом случае не очень приятно иметь в каталоге Firefox application-dll ...
Решением было бы установить рабочий каталог в каталог, где находится b.jar. Возможно ли это каким-либо образом?