Настройка рабочего каталога Java-апплета - PullRequest
0 голосов
/ 18 декабря 2009

У меня есть две подписанные банки: 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. Возможно ли это каким-либо образом?

1 Ответ

0 голосов
/ 18 декабря 2009

Апплетный подход не очень подходит для нативных библиотек.

Я бы посоветовал рассмотреть Java Web Start, который напрямую поддерживает DLL. Он был переработан в Java 6, чтобы хорошо работать и с апплетами.

...