Куда пропал lcdui в JME SDK 3.0+?

Я хочу написать крошечный мидлет J2ME "hello world". В таком примере, как этот, классы в javax.microedition.lcdui.* используются для вывода на экран . Когда я пытаюсь скомпилировать его в Eclipse, я получаю сообщение об ошибке,

Импорт javax.microedition.lcdui не может быть разрешен

Я установил JME SDK 3.4 и могу запускать мидлеты, которые не импортируют javax.microedition.lcdui.*. Где-то читал, что lcdui можно получить из набора инструментов для беспроводной связи; и Oracle сообщает, что набор инструментов беспроводной связи был интегрирован в JME SDK с 3.0+.

Так почему же Eclipse не может его найти?


person LarsH    schedule 18.02.2014    source источник
comment
Даунвотер, не хочешь объяснить?   -  person LarsH    schedule 30.06.2015


Ответы (2)


Хорошо, думаю, теперь я знаю ответ.

Я вернулся на страницу документации JME SDK 3.4 по адресу Использование примеров проектов, а также создал и запустил экземпляр UIDemo. Он использует классы lcdui, но работает безупречно — никаких ошибок о невозможности разрешения javax.microedition.lcdui.*.

Разница, по-видимому, в том, что в рабочем образце используются другие библиотеки, чем та, которую я пробовал сначала. Первый использует org.elipse.mtj.JavaMEContainer/Oracle Java(TM) Platform Micro Edition SDK 3.4/IMPNGDevice1, а тот, который работает, использует org.elipse.mtj.JavaMEContainer/Oracle Java(TM) ) Платформа Micro Edition SDK 3.4/JavaMEPhone1. Они содержат разные наборы банок, например. рабочий содержит midp_2.1.jar, а предыдущий - impng_1.0.jar.

Последующий вопрос может заключаться в том, почему в IMP-NG нет lcdui? Что ж, тем, кто уделяет внимание тому, что они делают, придется прочитать это.

Этот JSR [для IMP-NG] будет определять профиль J2ME, ориентированный на встроенные сетевые устройства, которые хотят поддерживать среду выполнения Java, аналогичную профилю мобильного информационного устройства (MIDP) версии 2.0, но не обеспечивающие возможности графического отображения, требуемые MIDP. 2.0.

Профиль информационного модуля — следующее поколение (IMP-NG) будет строгим подмножеством MIDP 2.0, где по крайней мере удалены API, относящиеся к функциям GUI (LCDUI). Функциональность, которой еще нет в MIDP 2.0 не ожидается и не требуется. "

Следующий вопрос может заключаться в том, почему я в конце концов выбрал IMP-NG, когда изучал учебник... когда мне действительно нужен мидлет, который делает что-то графически? Но я не уверен, что меня это волнует, теперь, когда это работает.

person LarsH    schedule 18.02.2014

Новый me sdk 8.2, как я понял после просмотра всех классов и пакетов, не предоставляет никакого класса для разработки пользовательского интерфейса. в отличие от sdk 3.4, в котором много графических компонентов.

person kamel2005    schedule 17.12.2015