Tạo một plugin

Cập nhật lúc 1742653605000

Cài đặt ezyplatform

Bạn có thể xem hướng dẫn cài đặt tại đây.

Hướng dẫn cài đặt ezyplatform SDK

  1. Tải ezyplatform SDK từ trang chủ.
  2. Giải nén file vừa tải về, ví dụ đường dẫn giải nén: app/ezyplatform-sdk.
  3. Thiết lập biến môi trường EZYPLATFORM_SDK trỏ đến thư mục vừa giải nén:
export EZYPLATFORM_SDK=app/ezyplatform-sdk
  1. Thêm thư mục bin của SDK vào biến PATH để sử dụng công cụ ezy.sh:
export PATH=$PATH:$EZYPLATFORM_SDK/bin

Ví dụ trên Linux:

Mở file cấu hình bằng lệnh:

nano ~/.bash_profile

Thêm các dòng sau vào file:

export EZYPLATFORM_SDK=app/ezyplatform-sdk
export PATH=$PATH:$EZYPLATFORM_SDK/bin

Lưu và áp dụng thay đổi:

source ~/.bash_profile

Ví dụ trên Windows:

  1. Mở Control Panel → System and Security → System.
  2. Chọn Advanced system settings → Environment Variables.
  3. Trong phần System variables, bấm New để thêm biến mới:
  • Variable name: EZYPLATFORM_SDK
  • Variable value: C:/path/to/app/ezyplatform-sdk
  1. Tìm biến Path trong danh sách System variables, bấm Edit.
  2. Thêm đường dẫn vào thư mục bin của SDK:
%EZYPLATFORM_SDK%/bin
  1. Bấm OK để lưu lại.

Build các thư viện cần thiết

Hãy đảm bảo rằng bạn đã cài đặt apache maven trước đó.

  1. Clone ezyplatform-development về.
  2. Di chuyển đến thư mục ezyplatform-development vừa clone và chaỵ lệnh: bash build.sh hoặc .\build.bat đối với windows.

Tạo plugin project

  1. Di chuyển đế thực mục chứa các dự án của bạn.
  2. Bạn có thể chạy lệnh: ezy.sh -h hoặc ezy.bat -h đối với windows và sẽ thấy hướng dẫn tạo project như sau:
create, create-project, cp, -cp <project name> 
    -g <group name, example: com.your_company> 
    -p [package name, example: com.your_company.my_project] 
    -v [version, example: 1.0.0] 
    -i [inclusive modules: *,admin-plugin,socket-app,socket-plugin,theme,web-plugin] 
    -e [exclusive modules: admin-plugin,socket-app,socket-plugin,theme,web-plugin] 
    -a [author] 
    -o [output directory]: to create a project

Giả sử bạn cần tạo dự án hello-word với 3 loại module là admin-plugin, themeweb-plugin và groupId là com.example bạn có thể chạy lệnh:

Với linux
ezy.sh cp hello-world -g com.example -i admin-plugin,theme,web-plugin
Với windows
ezy.bat cp hello-world -g com.example -i admin-plugin,theme,web-plugin

Chạy plugin project

Hãy chắc chắn rằng bạn đang sử dụng Java 8.

Ví dụ bạn vừa tạo dự án có tên hello-world.

  1. Di chuyển vào thư mục hello-world.
  2. Import dự án hello-world vào IntelliJ IDE, lưu ý nếu intelliJ của bạn không nhận EZYPLATFORM_HOME path variable, bạn sẽ cần làm theo hướng dẫn sau: Khắc phục lỗi IntelliJ không nhận path variable.
  3. Chạy lệnh: bash export.sh để export các thành phần của dự án đến EZYPLATFORM_HOME.
  4. Tìm đến file HelloWorldAdminPluginStartupTest trong module hello-world-admin-plugin trong thư mục src/test/[tên gói]/.
  5. Chạy file này.
  6. Mở trình duyệt, truy cập vào đường dẫn: htpp://localhost:9090 đây chính là giao diện admin.
  7. Trong giao diện admin, duy chuyển đến Plugins/Admin, tìm đến hello-world plugin và active nó lên.
  8. Khởi động lại HelloWorldAdminPluginStartupTest.
  9. Ngoài ra nếu bạn muốn khởi động socket-app, socket-plugin, theme, web-plugin hãy tìm đến các lớp XxxStartupTest trong các thư mục tương ứng.

Cấu hình lại working directory trên IntelliJ

Mặc định thì intelliJ sẽ có working directory là thư mục root ví dụ hello-world. Tuy nhiên để ezyplatform-tools có thể tự động load lại các file html, css, javascript hay các file static khác thì chúng ta sẽ cần chỉ định working directory về đúng module đang chạy.

  1. Trên intelliJ ở phần run, lựa chọn Edit Configurations…
  2. Trong phần Working directory cần trỏ về module tương ứng với file XxxStartupTest mà bạn cần khởi động.

Nếu IntelliJ không ghi nhận được path variable, bạn có thể tham khảo tại đây để tìm cách xử lý.

Export plugin

Để có thể publish plugin lên chợ ezyplatform.com hoặc cài đặt plugin cho ezyplatform trên máy chủ của bạn, bạn sẽ cần di chuyển đến dự án plugin của bạn ví dụ là hello-world, sau đó export bằng câu lệnh bash export.sh với linux và export.bat với windows.

Hãy em logs và đảm bảo rằng không có lỗi gì được ném ra, sau đó bạn sẽ có được file zip tại thư mục hello-world/target/project/hello-world.zip. Bạn có thể sử dụng file zip này để publish hoặc cài đặt.

Build lại plugin với IntelliJ IDE

Sau khi export plugin bạn cần build lại plugin bằng cách nhấn vào nút install bên phía tay phải của IntelliJ IDE để có thể start plugin với IDE. Tôi không biết tại sao, có thể đây là một bug của IntelliJ.

Screenshot 2024-02-15 at 22.36.53.png

Thay đổi working directory

Mặc định thì IntelliJ sẽ chạy dự án với thư mục gốc, bạn sẽ cần thay đổi Working directory sang các module tương ứng thì mới có thể sử dụng được tính năng tự động reload của ezyplatform-devtools. Giả sử bạn đang cần chạy HelloWorldAdminPluginStartupTest của module bạn sẽ cần thay đổi Working directory như sau:

Screenshot 2024-03-11 at 17.22.30.png

Tiếp theo

Bạn có thể liên kết với các plugin có sẵn để tái sử dụng lại các tính năng và mã nguồn.

Mục lục