Na dzień dobry potrzebujemy paczki z GWT. Można ją sobie ściągnąć z e strony www.code.google.com i po rozpakowaniu będziemy mieli już wszystko czego potrzebujemy. Co dalej? Otóż w naszym katalogu z GWt interesują nas na chwilę obecną dwa pliki. Pierwszy z nich to projectCreator.com ( lub .sh w wersji linuxowej ). Służy on do tworzenia projektów Eclipse. Uruchomienie go i stworzenie projektu jest stosunkowo proste, ale niestety wymaga poklepania w klawisze. Jeżeli chcemy utworzyć projekt HelloWord w katalogu root:\\GWT\\HelloWord musimy wpisać:

projectCreator.cmd -ant HelloWorld -eclipse HelloWorld -out c:\GWT\HelloWorld

Trochę tego jest niestety 🙁 na całe szczęście można sobie napisać mały skrypt który będzie przyjmował parametr i na jego podstawie generował odpowiednie wywołanie. W wyniku działania tego skryptu powinniśmy otrzymać we wskazanym katalogu:

  • plik HelloWorld.ant.xml – build anta
  • katalog src – miejsce na nasze źródła. Pusty
  • katalog test – miejsce na klasy testowe JUnita. Pusty
  • pliki .project i .classpath

Skoro mamy już projekt to czas na stworzenie aplikacji. Posłuży nam do tego programik applicatinCreator.cmd (lub .sh). Jego wywołanie ma następującą składnię:

$ applicationCreator.cmd -eclipse HelloWorld -out c:\GWT\HelloWorld paczka.client.HelloWorld

Istotne jest aby paczka z aplikacją zawierała w swej ścieżce .client. Jeżeli tego wpisu nie będzie to zostanie wyrzucony błąd. Jeżeli uda ma się przebrnąć przez ten proces powinniśmy mieć we wskazanym katalogu na dysku następujące pliki:

  • [katalog]\src\paczka\HelloWorld.gwt.xml – plik konfiguracyjny
  • [katalog]\src\paczka\public\HelloWorld.html – plik html z przykładową aplikacją
  • [katalog]\src\paczka\client\HelloWorld.java – przykładowa klasa
  • [katalog]\HelloWorld.launch – plik konfiguracyjny
  • [katalog]\HelloWorld-shell.cmd – plik uruchamiający ‘Hosted Mode’ – środowisko testowe
  • [katalog]\HelloWorld-compile.cmd – kompilator Java to JS

Ok teraz wystarczy uruchomić środowisko testowe i podziwiać naszą pracę…
Miłego grzebania 🙂