2010-03-26 24 views
7

Bir IzPack yükleyici için özel bir panel oluşturmaya çalışıyorum. Bu, IzPanel'u uzatmam gerektiği anlamına gelir. Ancak, bunu yaparsam, genişletilmiş panel needs to be incom.izforge.izpack.panels paketini görünür. Bu itibarlaİzpack: Özel paneller oluşturma

  1. olarak, özel paneli projesinin yapı yolundaki IzPack lib klasöründeki installer.jar içermelidir:

    Sonra öngörmektedir ki, this post bulundu.
  2. Özel paneliniz/gerekir/uzatın com.izforge.izpack.installer.IzPanel. Ayrıca, com.izforge.izpack.panels paketinde bulunması/bulunması/bulunması gerekmektedir.
  3. Hepsinden önemlisi, oluşturduğunuz jar'ın adı/gerekir/özel panel sınıfınızın nitelenmemiş adıyla aynı olmalıdır.

1. ve 4. noktalarla ilgili sorun yaşıyorum. Oluşturduğum her bir özel IzPanel için için ek bir JAR dosyası oluşturmam gerektiğini ima ediyorlar. Ayrıca, bu JAR'ları alt dizinlerinden birine ekleyerek IzPack kurulumunu değiştirmem gerekiyor.

Bu makalede güncel olmayan (2008) ve güvenli bir şekilde yok sayılabilir mi, yoksa bu hala doğru olabilir mi?
Eğer bunu nasıl önleyebilirim ve bunun yerine sınıf yolunda genişletilmiş İzPanel'i kullanabilir miyim?

Teşekkür ederiz!

cevap

2

, ben kendi paketinin içinde tek kavanoza panelleri istiyorum götürün.

Bu böyle yaparız:

  • Kopya

    1. özel tüm panelleri ile kavanoz oluşturun o IzPackStagingFolder \ bin \ panelleri
    2. Düzenleme yükleyici açıklayıcısı ve panellerin altında kavanoz

      : bölümlerde benzer panelleriniz bölümleri tanımlamak için install.xml içindeki

    Sonra CustomPanels.jar başvuru

    ... 
    <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> 
    ... 
    

    CustomPanels.jar, kendi paketlerinizle kendi paketlerinizle birlikte iki adet CustomPanelOne ve CustomPanelTwo ile birlikte her ikisi de IzPanel'i genişleten tek bir maven projesi olabilir.

    Daha fazla bilgi için bkz. IzPack'in eski 4.x belgeleri, https://izpack.atlassian.net/wiki/spaces/IZPACK/pages/491534/Creating+Panels. Şu andan itibaren yeni IzPack 5.x doc wiki bu bölümü kaçırıyor.

    Paul Bors ilaveten https://github.com/izpack/izpack/blob/4.3/src/dtd/installation.dtd

  • 0

    Bir daha noktada XML DTD Ayrıca reffer burada cevap.

    IzPacks 4.x yalnızca installer.jar bağımlılığı için gereklidir. Özel paneli installer.jar (izpack-installer-5.0.0-beta11.jar) ile derlemeye çalıştığımda, birçok derleme hatası buldu. Izpack 5.0, IzPack api (izpack-api-5.0.0-beta11.jar) ve Izpack gui'ye (izpack-gui-5.0.0-beta11.jar) ek bağımlılık ekliyor.

    Özel paneller oluşturmanın keyfini çıkarın.