2010-04-26 3 views
0

У меня есть приложение, которое запускается с JWS. В первый раз, когда пользователь запускает это приложение, он должен выбрать путь, где установлен Berkeley DB XML. Мне это нужно, чтобы установить путь к исходной библиотеке и перезапустить приложение с параметром -Djava.library.path. Беркли DB XML java bindings использует JNI для совершения вызовов в базу данных. Поскольку у наших пользователей может быть другая ОС, я не могу полагаться на местоположение по умолчанию.Как перезапустить процесс Java с помощью -Djava.library.path?

Итак, у меня есть проблема с получением текущего класса. Когда я распечатываю «java.class.path», он только дает мне «/System/Library/Frameworks/JavaVM.framework/Resources/Deploy.bundle/Contents/Home/lib/deploy.jar». У меня есть три банки, которые я не могу найти в своих sys-реквизитах. на моем Mac.

Надеюсь, это было понятно и спасибо за любые советы заранее.

+0

Это действительно странно, на мой взгляд, использовать механизм БД, размещенный на пользовательской машине, когда вы можете использовать удаленную БД или даже чистую Java-базу данных, которая будет сбрасываться с вашего веб-запускаемого приложения). – Riduidel

+0

Ну, это не мое решение о том, как использовать БД. Организация, в которой я работаю, использует Berkeley DB XML во встроенном режиме для хранения и запроса XML с помощью XQuery. Вот почему. – user3111525

+0

Пробовал ли вы 'System.setProperty (« java.library.path »,« path_to_libs »);' вместо перезапуска? –

ответ

0

Попробуйте восстановить права доступа с помощью DiskUtil.

Не используйте этот рисунок. Что вы можете сделать, так это сохранить команду и выполнить ее симуляцию, чтобы начать новый процесс.

Смежные вопросы