Powered By

Skin Design:
Free Blogger Skins

Powered by Blogger

Cari Blog Ini

04 Agustus 2021

Setting iDempiere 5.1 Development di Windows 7 secara manual.

Sebetulnya sudah lama saya ingin mulai melakukan development di iDempiere. Namun karena tidak ada hal yang membuat saya harus melakukannya maka ya tidak saya lakukan ☺ Kemudian pada suatu ketika ada hal yang membuat saya harus segera mempersiapkan untuk melakukan development pada iDempiere (versi 5.1). Maka saya pun mulai mempelajari dengan detail apa yang perlu dipersiapkan. Ada beberapa link yang menurut saya cukup memberi gambaran setting idempiere development environtment di windows. Youtube Tutorial


Namun sayangnya ternyata itu hanya untuk idempiere versi 6.1 keatas. Ada perubahan besar di adempiere 5.1 dan 6.1


Disitu disebutkan untuk java minimal java 11 dan migrasi dari buckminster ke maven. Untuk versi dibawah 5 ada tutorial dari evenos, namun tutorial itu dibuat saat buckminster masih digunakan sebagai tools development. Saat ini buckminster sudah tidak dipakai lagi dan jika kita akan install di eclipse maka tidak ada source install nya. Harus install manual. Nah saya masih buta mengenai develop java EE dan setting di eclipsenya. 


Kemudian diantara browsing saya mengenai setting idempiere development, saya mendarat di site www.chuckboecking.com. Pemilik situs itu adalah praktisi idempeire. Dia juga membuka pelatihan ERP, termasuk idempiere, termasuk dalam development dan implementasinya. Namun saat ini saya belum ikut pelatihannya, hanya sekedar tanya melalui email mengenai development idempiere 5.1. Dia bilang untuk idempiere 5.1 sudah terlalu lama dan beberapa link repository componentnya sudah tidak ada. Terutama buckminster. Thank a lot Chuck. 


Dari beberapa kali percobaan configure, akhirnya saya berhasil. Berikut langkah-langkahnya.


1. Download Eclipse Oxigen: download. Jangan lupa download juga JDK 1.8 nya. Setelah java tersetting dengan benar, maka eclipse dapat dibuka dengan sukses.

 Eclipse Java EE IDE for Web Developers. Version: Oxygen.3a Release (4.7.3a)Build id: 20180405-1200


2. Download iDempiere source code. download kemudian di extract di lokasi yang diinginkan. Misal di D:\id-source-51


3. Buka eclipse dengan membuat workspace baru yang lokasinya di tempat extract source idempiere tadi. (D:\id-source-51). Maka tampilan eclipse akan kosong. 

Membuat workspace

Belum ada project

4. Karena kita tidak menggunakan buckminster maka kita tambahkan project dengan cara membuka menu File -> Open Project from File System... pilih folder source (id-source-51). 


Pilih folder import project

5. Maka akan tampil project-project yang ada di folder source seperti dibawah ini. Pilih project yang akan di import. Dimulai dari org.adempiere.base sampai org.slf4j.jdk14. Untuk project org.adempiere.report.jasper.fragment.test di hilangkan centangnya juga.
Tekan Finish.

Pilih project yang diimport (default tercentang semua)



6. Maka tampilan eclipse akan muncul semua project yang dibutuhkan. Namun error!! Ya error karena banyak dependensi yang belum ada. Seharusnya dependensi tersebut didownload oleh proses import dengan buckminster. Namun banyak link yang sudah hilang atau berganti. Selain itu tentu plug-in buckminster sudah tidak ada di eclipse market.
Hasil import project

Contoh masalah dependensi pada org.idempiere.base



7. Kita harus mempersiapkan folder targetPlatform sendiri. Buat folder baru targetPlatform di folder source. Jadi foldernya akan menjadi D:\id-source-51\targetPlatform
Isi target platform dengan file yang ada di folder plugins dari folder idempiere-server. Ya, kita pastinya sudah punya folder idempeire-server dimana kita bisa run idempiere-server dengan lancar. 
Jika folder idempiere server kita ada di D, maka folder pluginnya adalah D:\idempiere-server\plugins


8. Masuk menu di eclipse, Window -> Preferences
Kemudian masuk bagian Plug-in Development - > Target Platform
Target Platform default


9. Tambah taget platform dengan menekan tombol Add pada form Target Platform. Pilih Nothing: Start with empty target difinition. Next. Kemudian muncul form dibawah ini. Isikan name iDempiere. Tekan tombol Add dan pilih Directory. Next. 
Tambah target platform


Masukkan location seperti gambar dibawah. ${workspace_loc}/targetPlatform

Isi dengan target platform folder yang telah dicopy tadi

Tampilan akan seperti gambar dibawah. Tekan finsih.
Hasil dari folder targetplatform


Setelah finsih, akan muncul target platform iDempiere, centang agar menjadi aktif.
Aktivasi iDempiere



10. Setelah proses penambahan target platform, ternyata masih ada error dibeberapa project. Jika di cek maka terlihat error di file  META-INF\manifest.mf
Contoh pada project org.adempiere.base. Terlihat Export Package bsh tidak ada. Hal ini karena pada setiap project folder idempiere harusnya sudah terdapat file-file jar yang digunakan oleh project. File tersebut tergenerate melalui proses Buckminster. 

Masih ada error di manifest.mf


11. Kita akan melakukan proses download jar tersebut manual. Pada setiap folder project akan terdapat file copyjars.xml.  Pada setiap file terdapat beberapa variable, misal url.maven2.lib, yang merupakan url untuk downlad. 

Contoh file copyjars.xml pada project org.adempiere.base


Kita harus setting secara manual di Window -> Preferences -> Ant -> Runtime. Masuk tab Properties.

Tab Properties


Tambah melalui tombol Add Property... Masukkan name dan value dibawah ini (masukkan satu per satu)


Name: url.alpn.boot         
Value: https://repo1.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/8.1.12.v20180117/alpn-boot-8.1.12.v20180117.jar

Name: url.file.jp.lib         
Value:  https://sourceforge.net/projects/idempiere/files/binary.file/jarfile/jp-6.3.1

Name: url.file.srv         
Value:  https://sourceforge.net/projects/idempiere/files/binary.file

Name: url.maven.zkoss.lib
Value: https://mavensync.zkoss.org

Name: url.maven2.lib         
Value: https://repo1.maven.org

Setelah ditambah property nya.



12. Untuk setiap folder yang berisi copyjar.xml, maka lakukan: 
Klik kanan pada file tersebut dan jalankan Run As -> Ant Build.  

Contoh hasil proses bulild yang sukses akan muncul seperti dibawah ini

copy:
      [get] Getting: https://repo1.maven.org/maven2/org/slf4j/slf4j-jdk14/1.7.2/slf4j-jdk14-1.7.2.jar
      [get] To: \org.slf4j.jdk14\slf4j-jdk14-1.7.2.jar
      [get] local file date : Fri Oct 12 01:56:03 ICT 2012
      [get]  
BUILD SUCCESSFUL
Total time: 2 seconds
Setelah Ant Build, lanjutkan dengan klik kanan Build Project pada folder Project nya (jika setting autobuild tidak dicentang) 

Jika semua folder project telah di build, maka tidak ada lagi error yang muncul.


13. Lakukan initial folder jetty dengan klik kanan folder project org.adempiere.base kemudian Run As -> Run Configurations ...
Pilih Eclipse Application -> install.app Tekan tombol RUN. Makan akan muncul dialog iDempiere Server Setup. Agar kita tidak perlu mengisi ulang setup, kita bisa copy kan file idempiere.properties dan idempiereEnv.properties dari folder idempiere-server ke folder source idempiere. Kemudian jalankan lagi install.app dan lanjutkan proses setup idempierenya sampai berhasil build.

setup:
BUILD SUCCESSFUL

BUILD SUCCESSFUL
Total time: 0 seconds

*** 2021-07-30 20:08:59.434 idempiere Log (CLogConsole) ***

Pilihan configuration



14. Sekarang kita mencoba RUN iDempiere server melalui eclipse. Buka RUN Configuration, pilih server.product. Kita perlu modifikasi sedikit settingannya untuk jalan di Windows. Pertama bagian arguments. Ganti VM Arguments bagian  -Dorg.zkoss.zk.config.path=file://${workspace_loc}/zk.xml sehinggam menjadi -Dorg.zkoss.zk.config.path=file:///D:/id-source-51/zk.xml  
Sesuaikan dengan folder workspase (workspace location)




Hal ini dilakukan karena masalah backspace yang beda antara linux dan windows.

Alhamdulillah, akhirnya berhasil run idempeire 5.1 (server) via eclipse.

Nah sekarang saya bisa berkreasi di idempiere.