2013-09-13 3 views
0

Я создал приложение swt-down swt. Я использовал 32-битные банки для приложения. Когда я передал приложение на 64-битный jvm, я получил неудовлетворенные ошибки компоновщика. Поэтому я использовал 64-битные банки.Приложение для принятия решения о версии банкомата

Мне нужно приложение для определения банок или бит 64 бит или 32 бит на основе версии jvm. Я могу найти версию jvm с помощью System.getProperty («sun.arch.data.model»), используя это, я могу выбрать банки для загрузки в память.

+0

Может быть, вам нужно написать специальный загрузчик классов для этого. – longhua

+0

Дайте журналы ошибок, пожалуйста, – aksappy

+0

@lhuang См. Мою ссылку. спасибо – rockstar

ответ

1

Да, вы можете сделать ваше приложение динамически, чтобы выбрать подходящую версию фляги. Его хорошая вещь, чтобы сделать, поскольку это обеспечивает переносимость вашего приложения.

Проверить это Select correct jar for your jvm at runtime

+0

Я использовал следующую методологию, т. Е. Путь к классам будет содержать как 64-битные, так и 32-битные банки, я прочитал путь к классам и удалил 32-битные библиотеки, если это 64-разрядная машина, и наоборот, и заменил путь класса приложения. Будет ли это работать. – vvekselva

+0

Разве не лучше упаковать и 32 и 64 битные версии банок. НЕ удаляйте что-либо, просто сообщите, какое приложение вызывается после запроса свойства os.arch. Ваш метод u вам нужно будет проверить. – rockstar

+0

как реализовать ту версию, которую вы упоминали – vvekselva

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