Lấy source và phát triển Openbravo POS bằng Netbean/ Eclip

Hướng dẫn này dành cho phiên bản Openbravo POS 2.3 trở đi. Tài liệu này có mục đích hướng dẫn cho những người dùng không chuyên về Java nhưng muốn phát triển và kiểm soát source của Openbravo POS.Đối với dân chuyên nghiệp thì đây là việc quá đơn giản nhưng có rất nhiều người không biết nhiều về java nhưng vẫn muốn phát triển OB POS. Tất nhiên để thực hiện được những bước như trong hướng dẫn bạn cần phải có một chút ít kiến thức căn bản về Java.

I. Lấy Source

Kể từ phiên bản 2,30 Openbravo đã thay đổi phần mềm kiểm soát phiên bản từ Subversion sang Mercurial. Điều đó có nghĩa là bạn không thể lấy được các source code mới nhất từ các máy chủ sử dụng Subversion của Openbravo. Bạn nên cài đặt một Mercurial client để làm được điều đó.
Cách 1. Lấy source code sử dụng Mercurial (Cách này hay nhưng hơi phức tạp, đối với beginer nên dùng cách 2)
Để lấy được source của OB POS thì yêu cầu bạn phải có một máy client Mercurial. bạn có thể tham khảo tài liệu sau về Mercurial manual cho quá trình phát triển OB POS. Bạn chỉ cần đọc phần làm sao để lấy và cập nhật được bộ source mới nhất thôi, còn nếu muốn tham khảo thêm thì tùy bạn ^_^.
- Để tới được nơi chứa source code bạn sử dụng lệnh sau trong mercurial
  hg clone https://code.openbravo.com/pos/devel/main/
- Để kiểm tra xem có thông tin cập nhật nào không, bạn sử dụng lệnh:

  hg incoming
- Nếu có bất kỳ thay đổi nào, bạn có thể cập nhật bằng lệnh:

 hg pull
- Có một lợi thế khi sử dụng Mercurial hơn hẳn Subversion là tại máy tính của bạn log lại bất cứ thay đổi nào bằng cách dùng lệnh:

 hg log

Cách 2: Lấy source bằng cách tải trực tiếp từ máy chủ SourceForge
Vì các máy chủ của OB được đồng bộ hóa với máy chủ SourceForge theo thời gian như vậy có nghĩa là bạn sẽ có thể lấy nguồn từ SourceFogre theo cách tải trực tiếp file source từ đây.
Để tải mã nguồn của phiên bản mới nhất ổn định hoặc một phiên bản trước đó bạn có thể vào trang  http://sourceforge.net/projects/openbravopos/files/ để tải về. Sau khi tải về giải nén nó vào thư mục tùy ý trên máy tính của bạn. Trong hướng dẫn này tôi giải nén vào ổ C

II. Build và chạy source tải về từ giao diện cmd bằng Apache ant.

Lưu ý: Phần này áp dụng cho những bạn muốn build thử source code hoặc cần tạo ra các gói cụ thể của source hoặc khi bạn không có trình biên dịch cụ thể nào cả. Còn nếu bạn phát triển OB POS bằng Netbean IDE trong phần IV thì bạn chỉ cần sử dụng Netbean thôi nhé.
Từ bản source bạn có thể tiến hành build để chạy phần mềm Openbravo POS từ bộ source này (Giống như bạn chạy OB sau khi cài đặt từ file cài đặt vậy đó) . Để Build source Openbravo POS  bạn cần Ant (Tôi đã hướng dẫn cài đặt Apache ant trong bài: http://minhbangchu.blogspot.com/2010/07/huong-dan-cai-at-openbravo-tren-windows.html) .
Bạn chạy lệnh ant sau từ thư mục bạn vừa giải nén:
  ant dist
Có lệnh ant để đóng gói  khác nếu bạn chỉ cần một gói cụ thể.
- Để có được gói openbravopos.jar thực hiện hướng dẫn sau đây: ant jar
- Để có được gói phân phối nhị phân thực hiện: ant dist.bin
- Để có được gói phân phối thi hành thực hiện : ant dist.src
Tất cả các gói được tạo ra bởi quá trình xây dựng nằm trong thư mục con build/dist.

III.Chỉnh sửa và build source code bằng cách sử dụng Netbean IDE

Có nhiều phần mềm để chỉnh sửa và xây dựng source code Openbravo POS như Eclip, Netbean... ở đây tôi sử dụng Netbean (Trên Eclip hoàn toàn tương tự).
- Để tạo mới một project Netbean với Openbravo sources, mở Netbeans và chọn New project...-->  chọn  Java Project with Existing Sources và nhấn Next.



- Ở bước tiếp theo chọn tên Project và thư mục nơi Project NetBean sẽ lưu và nhấn Next. Không nên chọn nằm trong thư mục source bạn đã tải về.
- Trong bước tiếp theo chọn thư mục source.Thêm các thư mục như:  reports, src-beans, src-data, src-erp, và src-pos. Trong bước này bạn có thể nhấn Finish.



- Bước tiếp theo là Add các thư viện cần thiết để xây dựng và thực thi Openbravo POS. Mở hộp thoại Properties... của Project và trong mục libraries thêm tất cả các file *.jar  của thư mục lib.  



- Để chạy và sửa lỗi Openbravo POS bạn cũng cần lựa chọn những class chính của dự án. Mở hộp thoại Properties...chọn mục run chọn “com.openbravo.pos.forms.StartPOS” trong Main Class và nhấn OK.
Bây giờ toàn bộ Source code của Openbravo POS đã được bạn đưa và Netbean ==> bạn có thể tùy chỉnh, fixbug, chạy...giống như toàn bộ Openbravo POS đã thuộc sử hữu của bạn vậy (^_^)
- Khau khi quậy thỏa thích trên bộ source của OB POS bạn thực hiện Build source này thành file .jar bằng cách nháy chuột phải vào tên Project của bạn vào chọn Build:



- Sau khi bạn đã Build thành công file jar nó được lưu trong \(Tên project của bạn)\dist\  để chạy file này bạn dùng Ant apache, trong trường hợp bạn không dùng ant bạn có thể chạy bằng lệnh sau trong cmd:
 java -jar "C:\OpenbravoPOS\dist\OpenbravoPOS.jar"
 Hoặc đơn giản hơn bạn có thể nháy chuột phải vào tên project và chọn Run.
Màn hình khi Build thành công có dạng như sau:




Lưu ý: Nếu bạn sử dụng Eclip thì cách thực hiện tương tự, bạn có thể tham khảo thêm tại đây http://wiki.openbravo.com/wiki/OpenbravoPOS_Developer_guide trong phần “Edit the sources using the Eclipse IDE”.

7 nhận xét:

  1. Chào bạn,
    Mình cài đặt OB POS lên máy bằng hai cách (dùng bản cài, build bằng NetBean) và nhận được cùng 1 lỗi:
    com.openbravo.basic.BasicException:
    Cannot connect to database. Database driver not found.

    java.lang.ClassNotFoundException:
    oracle.jdbc.driver.OracleDriver
    (Mình đã cài trên cả XP và W7)
    Mong bạn chỉ giáo giúp!
    Hưng

    Trả lờiXóa
  2. Bạn đang dùng MS SQL đúng không? nếu vậy bạn phải tải được các files gọi là driver để connect database của MS SQL về (nếu là ODBC menthod). Việc tải ở đâu thì bạn google nhé.

    Chúc thành công

    Trả lờiXóa
  3. Bạn dùng Oracle thì bạn cần tải Driver kết nối tới Oracke tại http://www.oracle.com/technetwork/indexes/downloads/index.html
    Bạn thực hiện cấu hình đối với database oracle:

    Driver library: ojdbc14.jar
    Driver class: oracle.jdbc.driver.OracleDriver
    URL: jdbc:oracle:thin:@localhost:1521:xe
    User youruser
    Password: youpass

    Trả lờiXóa
  4. @Son Ho: Hiện tai OB POS chưa hỗ trợ MS SQL đâu bạn. Nó chỉ hỗ trợ Apache Derby (Mặc định), MySQL, PostgreSQL, Oracle và HSQLDB.

    Trả lờiXóa
  5. Chào bạn !
    Mình đã build suorce được bằng netbean rồi.
    Bạn có thể hướng dẫn tiếp các bước cài đặt database MySQL cho netbean luôn dùm mình với.
    Mong đươc bạn giúp đỡ....
    Thanksssssssss

    Trả lờiXóa
  6. em vừa tải và cài đặt OB pos. vì em không biết gì về code cả nên em muốn hỏi 1 chút là OB có thể tạo feature gộm các tables với nhau khi khách đi đông không ạ? nếu có thể thì làm ơn hướng dẫn cho em ạ!

    em xin cảm ơn nhiều!

    Trả lờiXóa
  7. Chào bạn, bạn làm ơn cho mình hỏi mình muốn sửa giao diện đăng nhập phần mềm OP POS được không hả bạn, mình cũng không rành về java lắm nên mong bạn giúp đỡ, cảm ơn bạn nhiều

    Trả lờiXóa

Rất mong các ý kiến của các bạn khi đọc bài viết này !