Java » Java ME

Absolutne początki część 3 czyli jak ugryźć IDE

  • 2012-09-17 19:35
  • 0 komentarzy
  • 2134 odsłony
  • Oceń ten tekst jako pierwszy
We wcześniejszych artykułach, które już liczą sobie ponad 4 lata opisywałem sposób konfiguracji minimalnego funkcjonalnego środowiska do tworzenia aplikacji mobilnych. Przypomnijmy sobie co było nam potrzebne:

  • Java Development Kit
  • Wireless Toolkit (jako "środowisko" służył nam KToolbar)
  • jakiś edytor tekstu (na siłę choćby nawet Notatnik, ale lepiej coś z kolorowaniem składni - Notepad++, gedit, Kate, ...)

Tym razem wyjdziemy wreszcie z epoki "kamienia łupanego asemblerem" i dorzucimy sobie do tego zestawu środowisko programistyczne.

Do wyboru mamy jedno z dwóch środowisk: Eclipse lub NetBeans. Od nas zależy które wybierzemy, ich możliwości są podobne.

Uwaga dla użytkowników Debiana


Jeżeli używasz Debiana czy jakiejś jego pochodnej, zapewne Twoim pierwszym odruchem będzie odpalenie konsoli i wpisanie do niej:
$ sudo apt-get install netbeans

albo
$ sudo apt-get install eclipse

Nie polecam Ci instalowania ani jednego, ani drugiego z repozytoriów. Rzadko kiedy znajdziemy tam najnowszą wersję programu. Przykładowo, aktualnie najnowszy NetBeans to 7.2, podczas gdy w repozytoriach dostępny jest nieco starszy 7.0. Poza tym, obydwa środowiska zainstalowane z repozytoriów przysporzyły mi na jakimś etapie problemów. Eclipse z repozytoriów nie chciał w ogóle widzieć wtyczek, zaś NetBeans nie chciał poprawnie stworzyć nowego projektu aplikacji webowej.
Obydwa środowiska możesz ściągnąć ze strony domowej każdego z projektów:

Eclipse


http://www.eclipse.org/downloads/ - wystarczy Eclipse Classic, chyba, że będziesz chciał używać Eclipse do tworzenia aplikacji webowych.

NetBeans


http://netbeans.org/downloads/index.html - polecam raczej NetBeans w dystrybucji All.

Przygotowanie Eclipse


Na początek, musimy zainstalować w Eclipse wtyczkę EclipseME. Wchodzimy w tym celu do menu Help, z którego wybieramy opcję Install New Software. Następnie dodajemy przyciskiem Add nowe źródło oprogramowania. Nadajemy mu dowolną nazwę, najlepiej "EclipseME", zaś ważny jest adres:
http://www.eclipseme.org/updates/
który wklejamy do pola Location.
Klikamy OK i wybieramy z menu nowo dodaną stronę. Pozostaje teraz tylko zainstalowanie wtyczki.

Teraz musimy skonfigurować EclipseME, aby móc z niego korzystać. Wchodzimy w menu Windows | Preferences. Następnie, na liście po lewej stronie okna rozwijamy sekcję J2ME i wchodzimy w Device Management. Program jeszcze nie wie, gdzie zainstalowaliśmy Wireless Toolkit, dlatego klikamy przycisk Import, a w kolejnym oknie Browse i wskazujemy Eclipse'owi katalog gdzie "leży" WTK. Po krótkim czasie powinniśmy zobaczyć listę dostępnych emulatorów telefonów. Zaznaczamy każdy z nich i klikamy Finish. Na koniec, w oknie ustawień wybieramy sobie domyślny emulator telefonu - zazwyczaj będzie to Default Color Phone.

Przygotowanie NetBeans


Konfiguracja NetBeans jest nieco prostsza. Z menu Tools wybieramy Plugins. Następnie przechodzimy na kartę Available Plugins, wyszukujemy wtyczkę Java ME w kategorii Mobility i instalujemy ją.
Po poprawnie wykonanej instalacji nie ominie nas konieczność skonfigurowania NetBeansa. Z menu Tools wybieramy Java Platforms. Otworzy nam się okno, w którym klikamy na Add platform. Następnie wybieramy opcję Java ME MIDP Platform Emulator, a w następnym kroku pokazujemy katalog, gdzie został zainstalowany Wireless Toolkit. Dalszy ciąg instalacji przebiega cicho - zaznaczamy na liście wykryty WTK, klikamy Next, a następnie Finish. I to wszystko jak na razie.

Tworzymy nowy projekt


Zarówno w Eclipse, jak i w NetBeans tworzenie projektu przebiega w dwóch krokach. Najpierw tworzymy aplikację, a potem dodajemy do niej MIDlety. Jest to różnica w stosunku do KToolbara, gdzie tworząc nową aplikację od razu zakładaliśmy w niej pierwszy MIDlet.

Eclipse


Nowy projekt tworzymy wybierając w menu: File | New | Project. W wyświetlonym oknie wybieramy J2ME Midlet Suite, które znajduje się w sekcji J2ME. Następnie nadajemy projektowi nazwę i już na tym etapie możemy kliknąć Finish, gdyż w kolejnych krokach nic nie musimy zmieniać w ustawieniach.
Drugim krokiem jest utworzenie w projekcie pierwszego MIDletu. Wybieramy File | New | Other i z wyświetlonej listy wybieramy J2ME Midlet. Następnie nadajemy mu nazwę, opcjonalnie również nazwę pakietu, oraz klikamy Finish.
Dobrym zwyczajem jest ustawienie od razu konfiguracji naszej aplikacji - wersje CLDC oraz MIDP. W tym celu kliknij dwukrotnie na pliku <nazwa-projektu>.jad. Domyślne ustawienia z reguły są prawidłowe - CLDC 1.1 oraz MIDP 2.0. Zapewne będziesz chciał zmienić nazwę aplikacji z domyślnej "<nazwa> Midlet Suite" na jakąś swoją.

NetBeans


Nowy projekt zakładamy przez menu: File | New Project. Z listy po lewej wybieramy kategorię Java ME, następnie z drugiej listy Mobile Application. W następnym kroku podajemy nazwę projektu. W trzecim kroku możemy wybrać, jaka ma być domyślna konfiguracja naszego MIDletu. Na tym etapie możemy wybrać emulator telefonu oraz wersje MIDP oraz CLDC. Zwróć uwagę że domyślnie jest wybierane MIDP 2.1, zalecam przestawić je na MIDP 2.0. Można obecnie śmiało przyjąć założenie, że w obiegu nie ma już telefonu który obsługuje tylko wersję 1.0 - chyba że jesteś koneserem i ciągle używasz Sony Ericssona T630 (i masz szczęście, że jeszcze nie rozsypał Ci się w nim joystick :)). Możesz kliknąć już Finish, na ostatniej karcie masz tylko opcje służące do stworzenia od razu większej liczby konfiguracji. Możesz to zrobić bez problemu już po stworzeniu projektu.
Oczywiście, podobnie jak w Eclipse musimy do na razie pustej aplikacji dorzucić pierwszy MIDlet. Wybierz z menu File polecenie New File, a następnie opcję MIDlet z prawej listy (pamiętaj o zaznaczeniu na lewej liście kategorii J2ME, jeżeli nie jest wybrana). Następnie musisz nadać nazwę nowemu MIDletowi i kliknąć Finish.

Piszemy kod


Zarówno Eclipse, jak i NetBeans stworzą nam szablon kodu MIDletu, który już zawiera zdefiniowane (na razie puste) funkcje startApp, pauseApp i destroyApp, a w Eclipse również konstruktor głównej klasy MIDletu. Do dyspozycji mamy również automatyczne uzupełnianie kodu. Pisząc kod, naciskając jednocześnie klawisze Ctrl+Spacja zobaczymy podpowiedzi nazw obiektów, metod oraz przyjmowanych przez nie argumentów. Na uwagę zasługuje również funkcja automatycznego dodawania importowanych pakietów. Przykładowo, gdy napiszemy linijkę:
 Form form = new Form("Formularz");

zostanie ona podkreślona czerwoną falistą linią, gdyż aby móc używać klasy Form musimy dołączyć pakiet javax.microedition.lcdui. Nie musimy tego robić ręcznie - naciskając kombinację Ctrl+Shift+O (Eclipse) lub Ctrl+Shift+I (NetBeans) brakujące pakiety zostaną automatycznie dołączone do kodu:
import javax.microedition.lcdui.Form;


Uruchamianie naszego kodu


Napisany kod trzeba jakoś skompilować i uruchomić lub wygenerować archiwum JAR. Aby uruchomić kod pod emulatorem, w NetBeans wystarczy nacisnąć klawisz F6, a w Eclipse Ctrl+F11. Natomiast w celu wygenerowania archiwum JAR...

Eclipse


...klikamy prawym klawiszem myszy w przeglądarce projektu na nazwie projektu i wybieramy J2ME | Create Package. Wygenerowanie pliki JAD i JAR znajdziemy w podkatalogu deployed.

NetBeans


...klikamy prawym klawiszem myszy w przeglądarce projektu na karcie Projects na nazwie projektu i wybieramy Deploy. Wygenerowane pliki JAD i JAR znajdziemy w podkatalogu dist. Na karcie Projects ich nie zobaczymy - w tym celu musimy przełączyć się na kartę Files.