Setting GWT2 project dengan gwt-maven-plugin

GWT2 menawarkan banyak fitur baru yang menarik: OOPHM, SOYC, pemecahan kode, deklaratif UI, untuk beberapa nama. Malam ini, saya bereksperimen menyiapkan proyek GWT2 dengan menggunakan plugin Codehaus’s gwt-maven.

Saya menggunakan Eclipse, jadi jelas, Anda memerlukan m2eclipse dan Google Eclipse Plugin. Langkah pertama adalah membuat proyek Maven:

File->New->Project ->Maven Project

Dalam dialog pemilihan pola dasar, pilih org.codehaus.mojo.gwt-maven-plugin: 1.1.

Kita memilih ini untuk membuat arketipe tapi 1.1 tidak bekerja dengan GWT2. Nantinya, kita akan memodifikasi pom.xml untuk menggunakan versi plugin yang lain.

Masukkan GroupId, ArtifactId, Version, dan Package proyek Anda -> Finish

screenshot-new-maven-project-1

Plugin ini menghasilkan pola dasar proyek GWT 1.6. Di Eclipse, buka pom.xml. Seperti yang dinyatakan sebelumnya, gwt-maven-plugin 1.1 tidak bekerja dengan GWT2. Kamu butuh 1.2, tapi sejak 1,2 belum dirilis, kita akan menggunakan versi snapshot. Versi snapshot di-host di repositori snapshot codehaus, jadi kita perlu menambahkan repositori terlebih dahulu.

plugin-repo1

Id: codehaus-snapshot-repository
Nama: (apapun yang anda suka)
URL: http://snapshots.repository.codehaus.org

Kemudian, ubah versi gwt-maven-plugin dari 1,1 menjadi 1,2-SNAPSHOT

plugin-repo

Selain itu, Anda perlu menentukan modul dan runTarget dalam konfigurasi plugin, sesuatu yang mirip dengan yang berikut:

      <plugins>
          <plugin>
              <groupId>org.codehaus.mojo</groupId>
              <artifactId>gwt-maven-plugin</artifactId>
              <version>1.2-SNAPSHOT</version>
              <executions>
                  <execution>
                      <goals>
                          <goal>compile</goal>
                      </goals>
                  </execution>
              </executions>
              <configuration>
                  <module>com.mycomp.demo.mygwt2.Application</module>
                  <runTarget>com.mycomp.demo.mygwt2.Application/Application.html</runTarget>
              </configuration>
          </plugin>
</plugins>

Simpan pom. Eclipse akan sibuk mengambil dependensi dan membangun proyek.

Setelah selesai, saatnya membuat peluncur.

Klik kanan pada pom.xml, Run As-> Maven Build …, pada dialog Run Configurations, taruh “gwt: compile gwt: run” sebagai tujuannya.

Tekan “run”, aplikasi GWT Development Mode akan muncul.

screenshot-gwt-development-mode

Bagian terakhir yang hilang adalah mode debug. Salah satu kelebihan penggunaan GWT adalah pengembangan aplikasi AJAX dengan perkakas Java yang ada. Jadi ayo kita lanjutkan dan siapkan.
Klik kanan pada pom.xml-> Run As-> Maven build …
Pada dialog berikut, masukkan “gwt: debug” sebagai tujuan, simpan.

Klik pada dropdown tombol debug pada toolbar, pilih “Debug Configurations”.
Di panel sebelah kiri, cari “Remote Java Application”, pilih dan klik ikon “New launch configuration” (pojok kiri atas). Terima default, simpan, dan tutup.

screenshot-debug-configurations

Letakkan breakpoint di Application.onModuleLoad (), jalankan server debug dengan menjalankan debug launcher yang baru saja kita buat. (yang dengan tujuan gwt: debug).

Bila Anda melihat “Mendengarkan untuk transport dt_socket di alamat: 8000” di konsol output, jalankan peluncur lampirkan yang baru saja kita buat (remote debugger).

Aplikasi GWT Development Mode muncul. Karena GWT2 menggunakan OOPHM (Out Of Process Hosted Mode), Anda perlu menyalin URL awal dan menempelkannya ke browser (saya menggunakan FF). Jika ini adalah pertama kalinya Anda menjalankan mode host seperti itu, Anda akan diminta untuk menginstal plugin Firefox.

Setelah terinstal, tempelkan URL ke bilah alamat. Jika semuanya berjalan baik, breakpoint Anda akan terpukul.

screenshot-debug-mygwt2-src-main-java-com-mycomp-demo-mygwt2-client-application-java-eclipse

Itu dia. Contoh proyek GWT2 yang dikalibrasi. Nikmati barang yang ditawarkan oleh GWT2 dan Maven!

 

Pos terkait

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.