Принудительно запускать Java-апплет вместо 32-битной JRE - PullRequest
2 голосов
/ 10 октября 2011

У меня есть Java-апплет, разработанный под 32-битный JDK (1.5). При развертывании его на новой MacOS (10.7) он работает неправильно - потому что в этой системе по умолчанию предпочтительнее использовать 64-битную JRE (есть две для выбора: 32 и 64-битная). Если предпочтительный порядок сначала изменить на 32-разрядный, все в порядке - но это не решение, поскольку изменение настроек на клиентском компьютере неудобно. Для отдельного пакета приложений это можно исправить с помощью соответствующих настроек в info.plist, просто указав архитектуру приложения.

Итак, есть ли способ сделать то же самое при запуске апплета - указать архитектуру i386, заставить браузер запускать 32-битную JRE, заставить JVM работать в 32-битной или что-то еще?

Пока я нашел только то, как указать версию / семейство JRE для апплета, это не помогает. Я пытаюсь запустить апплет, используя код как:

<object
classid="clsid:CAFEEFAC-0015-0000-FFFF-ABCDEFFEDCBA"
width="740" height="400"
codetype = "application/x-java-applet;version=1.5"
>
<param name="code" value = "ca/lcsi/Program/App/LogoFrameApplet.class"> 
<param name="archive" value="webplayer.jar">
<param name="project" value="testpath.tsfp"> 
<param name="lang" value="en">
    <embed 
    type="application/x-java-applet;version=1.5" 
    code="ca/lcsi/Program/App/LogoFrameApplet.class"
    archive = "webplayer.jar"
    project = "testpath.tsfp"
    lang = "en"
    width="740" height="400"
    >
</object>

Буду признателен за предложения!

1 Ответ

1 голос
/ 19 октября 2011

Итак, проблема вроде бы решена, если кому-то интересно.

Для апплета это невозможно. Можно запустить JVM в 32-битном режиме с использованием Java Web Start. Но с текущей реализацией (Java SE 6) JWS менее удобен, чем апплеты, из-за абсолютного поля 'codebase' в файле конфигурации, которое ограничивает развертывание апплета / приложения.

Кажется, проблема в реализации JRE - моя программа действительно имеет очень ограниченные системные части, и ни одна из них не зависит от битности. Продолжил бы тестирование, чтобы локализовать проблему для сообщения об ошибке:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...