2009-09-04 4 views
23

Sto migrando una versione di un'applicazione Java di medie dimensioni da Ant a Maven. Potrei facilmente eseguire la migrazione degli elementi di base, ma vorrei anche creare i pacchetti di installazione dal build di Maven. Il modo più semplice sarebbe quello di chiamare gli script Ant originali attraverso il plugin Ant, ma ho pensato che forse dovrei prima guardarmi intorno per un po 'di supporto Maven.Come creare programmi di installazione con Maven

avrei bisogno di creare più programmi di installazione differenti per diverse piattaforme:

  • di Windows 32/64 bit
  • Linux 32/64 bit
  • MacOS 32/64 bit

Per Linux ora penso che abbiamo solo un tar.gz e alcuni script Bash per avviare i daemon: un pacchetto Debian/RPM sarebbe molto più carino, magari con definizioni di pacchetti dipendenti. Per gli installer di Windows utilizziamo il programma di installazione di NullSoft. Non ho idea di come sia assemblato il pacchetto MacOS ora.

Ci sono strumenti là fuori per fare questo (o almeno una parte di esso) da Maven?

+0

Per interessi, come sei andato e come hai trovato la migrazione? –

risposta

18

userei il IzPack maven plugin se avete bisogno di un programma di installazione in piena regola, o se semplicemente appassembler-maven-plugin necessario generare demoni per i servizi Java.

ci sono anche plugin per NSIS, Debian, e RPM confezionamento, ma utilizzando quei mezzi si deve mantenere le configurazioni per ogni piattaforma, d'altra IzPack mano permette di generare un programma di installazione per Windows XP/Vista/2003/2000 , Mac OS X, Solaris, Linux e * BSD.


Il plugin di appassionatore fornisce un obiettivo per generare daemon JSW per ogni piattaforma. Ecco un esempio di configurazione:

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>appassembler-maven-plugin</artifactId> 
    <version>1.0</version> 
    <execution> 
    <id>generate-jsw-scripts</id> 
    <phase>package</phase> 
    <goals> 
     <goal>generate-daemons</goal> 
    </goals> 
    <configuration> 
     <daemons> 
     <daemon> 
      <id>myApp</id> 
      <mainClass>name.seller.rich.MainClass</mainClass> 
      <commandLineArguments> 
      <commandLineArgument>start</commandLineArgument> 
      </commandLineArguments> 
      <platforms> 
      <platform>jsw</platform> 
      </platforms>    
     </daemon> 
     </daemons> 
     <target>${project.build.directory}/appassembler</target> 
    </configuration> 
    </execution> 
</plugin> 
+0

Io uso anche Izpack per le mie distribuzioni Windows, ma il programma di installazione di Linux non è molto simile a Linux e l'installazione OSX è una pessima idea, userei un programma di installazione separato per OSX. –

0

sto cercando in InstallJammer - non vedo un plugin Maven per esso, ma in confronto con IzPack, sembra molto più professionale.

0

BitRock InstallBuilder può essere utilizzato con Maven (e altri strumenti di configurazione CI) per generare programmi di installazione di Windows exe, binari di Linux/RPM/DEB e OS X.È commerciale ma abbiamo sconti per piccole imprese/sviluppatori solisti e licenze gratuite per progetti open source (Disclaimer, sono l'autore di InstallBuilder)