2010-03-26 32 views
7

Tôi đang cố gắng tạo bảng tùy chỉnh cho trình cài đặt IzPack. Điều này có nghĩa là tôi phải gia hạn IzPanel. Tuy nhiên, có vẻ như nếu tôi làm điều này, bảng mở rộng needs to be in gói com.izforge.izpack.panels.Izpack: Tạo bảng tùy chỉnh

Sau đó, tôi tìm thấy this post, trong đó quy định:

  1. Như vậy, bạn phải bao gồm installer.jar từ thư mục lib của IzPack trong việc xây dựng con đường của dự án bảng điều khiển tùy chỉnh của bạn.
  2. Bảng tùy chỉnh của bạn/phải/mở rộng com.izforge.izpack.installer.IzPanel.
  3. Ngoài ra, nó/phải/nằm trong gói com.izforge.izpack.panels.
  4. Trên hết, tên tòa nhà của bạn/phải/giống với tên không đủ tiêu chuẩn của lớp bảng tùy chỉnh của bạn.

Tôi gặp sự cố với điểm 1 và 4. Chúng ngụ ý rằng tôi phải tạo một tệp JAR bổ sung cho mỗi tùy chỉnh IzPanel mà tôi tạo. Ngoài ra, tôi sẽ phải sửa đổi cài đặt IzPack bằng cách thêm các JAR này vào một trong các thư mục con của nó.

Bài viết này có lỗi thời (2008) và nó có thể được bỏ qua một cách an toàn, hoặc điều này vẫn đúng?
Nếu không làm thế nào tôi có thể tránh điều này và chỉ đơn giản là có mở rộng IzPanel trên classpath thay vào đó?

Cảm ơn bạn!

Trả lời

2

Được rồi, tôi mang nó bạn muốn có tấm của bạn trong một lọ duy nhất trong gói của riêng bạn.

Đây là cách bạn làm điều đó:

  1. Tạo jar của bạn với tất cả các tấm pin tùy chỉnh của bạn
  2. Sao chép rằng jar vào IzPackStagingFolder \ bin \ tấm
  3. Chỉnh sửa mô tả cài đặt và dưới tấm các phần tham chiếu đến CustomPanels.jar

Sau đó, bên trong tệp install.xml bạn xác định các phần bảng tương tự như:

... 
<panels> 
    <panel classname="HTMLInfoPanel"   id="infopanel" encoding="ISO-8859-1" /> 
    <panel classname="TargetPanel"   id="targetpanel" /> 
    <panel classname="com.myCompany.installer.panels.MyCustomPanelOne"  id="customPanelOne" jar="bin/panels/CustomPanels.jar" /> 
    <panel classname="UserInputPanel"   id="userInputPanel" /> 
    <panel classname="InstallPanel"   id="installPanel" /> 
    <panel classname="ProcessPanel"   id="processPanel" /> 
    <panel classname="com.myCompany.installer.panels.MyCustomPanelTwo" id="customPanelTwo" jar="bin/panels/CustomPanels.jar" /> 
    <panel classname="FinishPanel"   id="finishPanel" /> 
</panels> 
... 

Trong đó CustomPanels.jar có thể là một dự án maven duy nhất với các bảng của riêng bạn trong gói của riêng bạn với hai lớp CustomPanelOne và CustomPanelTwo cả hai mở rộng IzPanel.

Để biết thêm thông tin, hãy xem tài liệu 4.x của IzPack cũ tại https://izpack.atlassian.net/wiki/spaces/IZPACK/pages/491534/Creating+Panels. Kể từ bây giờ, tài liệu IzPack 5.x doc wiki mới hơn bị thiếu phần này.

Cũng reffer đến DTD XML tại https://github.com/izpack/izpack/blob/4.3/src/dtd/installation.dtd

0

hơn Một điểm ngoài Paul Bors trả lời ở đây.

IzPacks 4.x chỉ cần installer.jar làm phụ thuộc. Khi tôi lần đầu tiên cố gắng biên dịch bảng tùy chỉnh với installer.jar (izpack-installer-5.0.0-beta11.jar), đã tìm thấy nhiều lỗi biên dịch. Izpack 5.0 bổ sung thêm sự phụ thuộc vào api IzPack (izpack-api-5.0.0-beta11.jar) và Izpack gui (izpack-gui-5.0.0-beta11.jar).

Tận hưởng tạo bảng tùy chỉnh.