| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java ME (J2ME) > Форма |
| Автор: IceVolt 2.11.2011, 17:38 |
| http://s1.ipicture.ru/Gallery/Viewfull/6625959.html в общем пытаюсь реализовать Форму как показано на примере в рисунке, но при компиляции выдает ошибку типа: j2mewtk\2.5.2\apps\FormProject\src\FormMidlet.java:4: class FormMIDlet is public, should be declared in a file named FormMIDlet.java public class FormMIDlet extends MIDlet { |
| Автор: Rigid 2.11.2011, 18:25 |
| Имя файла и public класса в нем должны совпадать, а у тебя FormMidlet и FormMIDlet |
| Автор: IceVolt 2.11.2011, 18:35 |
| но ведь в книге так и написано! поменял название, стало хуже: Error preverifying class FormMidlet Class loading error: Wrong name com.sun.kvem.ktools.ExecutionException: Preverifier returned 1 Build failed |
| Автор: IceVolt 3.11.2011, 10:46 |
| больше некому помочь? |
| Автор: oxigen 3.11.2011, 15:08 |
| Конструктор не забыл переименовать? Имя конструктора должно совпадать с именем класса и должно совпадать с именем java файла. Это все тот же Буткевич? За такое число ошибок в примерах стоит оторвать редактору этой книги руки. Там в книге точно нет ссылки на то, где можно эти примеры скачать? |
| Автор: IceVolt 3.11.2011, 17:17 |
| oxigen, просмотрите картинку\рисунок в первом посте, сделал все точно так же. ан нет, это уже не Буткевич а Программируем игры для мобильных телефонов. Под редакцией А.В. Виноградова |
| Автор: oxigen 3.11.2011, 18:43 |
| В книге: Файл называется FormMidlet.java Класс FormMIDlet Конструктор FormMIDlet() Чтобы все заработало, надо поменять названия класса и конструктора. Чтоб они совпали с именем файла. А Вы похоже переименовали .java файл. Но тогда надо было еще в свойствах мидлета тоже поменять название. Это в .jad файле А то сейчас он при запуске ищет файл со старым названием. И естественно не находит. |
| Автор: IceVolt 3.11.2011, 22:21 |
| oxigen, сделал как вы сказали, даже заново переделал все, компилятору все пофиг, он все так же уверенно ругается! |
| Автор: IceVolt 3.11.2011, 22:53 |
| вот! теперь компилится нормально, но при тесте ругается опять (((( Uncaught exception java/lang/NoClassDefFoundError: FormMIDlet. что тут с формами не правильно? Добавлено через 7 минут и 5 секунд private Form form; \\объявил переменную public FormMidlet () { form = new Form ("Форма"); \\создал форму Display.getDisplay (this) .setCurrent (form); \\вывожу на экран } что здесь не правильно? |
| Автор: oxigen 4.11.2011, 10:59 |
| Да с формами то все правильно. Тут по прежнему лажа с именами. Смотрите: текст ошибки Uncaught exception java/lang/NoClassDefFoundError: FormMIDlet. Конструктор : public FormMidlet () { То есть по прежнему два разных имени присутствуют. Создайте что ли новый проект с совершенно другим именем MyTest какой-нибудь. |
| Автор: IceVolt 4.11.2011, 11:44 |
| офигеть просто можно! исключил из названия слово Form вообще и заработало! но почему так? ведь в книге у автора все нормально получается? может из за компилятора? во всяком случае oxigen, спасибо вам огромное, вы во второй раз меня уже выручили! |
| Автор: math64 7.11.2011, 18:00 |
| Посмотри в манифест - там название мидлета написано по-другому. Везде должно быть одинаково. |