Maven modules decomposition

IzPack is decomposed in several maven modules.
There is an agregator pom in the project root which aggregate all modules and all modules share the same parent.

  • izpack-parent : The common parent of all modules. It defines dependencies' version with dependencyManagement, common dependencies and common configuration (like version of java compilation)
  • izpack-api : interfaces and global models for IzPack
  • izpack-tools : Tools independent of the IzPack API
  • izpack-util : Helper methods (IoHelper, OsConstraints...)
  • izpack-core : Defines classes shared by the compiler and installer.
  • izpack-compiler : Contains logic for the installer compilation.
  • izpack-gui : GUI classes as Layout, factories
  • izpack-uninstaller : Contains all uninstaller classes
  • izpack-panel : Contains all panels
  • izpack-native-parent : common parent for native library support
  • izpack-event : Containing listener for installation
  • izpack-installer : Installer managing launch, unpacking and installation of the installer.
  • izpack-dist : Contains all resources for the IzPack self-installer
  • izpack-wrapper : Contains izpack2exe, izpack2app, izpack2jnlp

Test modules :

  • izpack-test-common : Contain class shared by tests like Matcher and Mocks and Junit custom runner
  • izpack-test-listener : Contains InstallerListener and UninstallerListener implementations for testing purposes
  • izpack-test : Integration test of IzPack. Execute sample install and compilation

Build Support :

  • izpack-maven-plugin : defines the IzPack mojo running IzPack compilation
  • izpack-ant : ant task for running IzPack compilation