2011-09-23 9 views
5

Abbiamo un'applicazione web che dobbiamo rendere più facile da implementare per i nostri clienti. Il flusso di lavoro corrente per una nuova installazione:In base alle mie esigenze, dovrei usare NSIS o jprofiler/install4j

  • Assicurarsi che v'è una JRE sulla macchina (32 o 64 bit)
  • Installare Tomcat (32 o 64 bit)
  • creare un database in Oracle o SQL Server (noi fornire script SQL per questo)
  • Scrivere alcuni valori nella nostra tabella delle impostazioni, come il nome host. (Può ottenere all'utente di verificare questi, ma non desidero all'utente di avere a toccare loro in.
  • Creare un file di connessioni proprietà (mettiamo a disposizione un mini app JAR per aiutare con questo) che siederà sotto Tomcat.
  • Abbiamo due file WAR per la nostra applicazione web attuale. Questi possono essere divisi tra due macchine, ma per ora, lascia supporre che entrambi vengono scaricati sotto Tomcat.
  • Avviare Tomcat in modo che dispiega le guerre

si tratta di un processo noioso per i nostri utenti Voglio incapsularlo in un programma di installazione e ho cercato di farlo in NSIS che sembra avere un grande communi ty, ma poi si è imbattuto anche in install4j, che sebbene sembri essere meno conosciuto, è più specifico per le applicazioni basate su java.

Volevo solo ottenere un feedback dagli utenti più esperti là fuori sulla scelta migliore per la piattaforma.

Non voglio entrare a metà e quindi ho capito che ho scelto la piattaforma di installazione sbagliata.

risposta

11

Disclaimer: La mia azienda sviluppa install4j.

Prima di tutto, install4j è uno strumento commerciale, quindi è una notevole differenza per NSIS. Altre importanti differenze sono:

  • install4j è un programma di installazione multipiattaforma per Windows, Mac OS X e tutte le piattaforme Linux e Unix POSIX compatibili.
  • L'obiettivo principale di install4j è l'installazione di applicazioni basate su Java, ad esempio gestisce la creazione di lanciatori e servizi e fornisce diverse strategie per il raggruppamento di JRE. Molte cose di cui hai bisogno per un'applicazione Java funzioneranno immediatamente.
  • install4j fornisce il proprio IDE che si concentra sulla facilità d'uso
  • Lo scripting è fatto in Java. L'IDE fornisce un editor integrato con il completamento del codice e l'analisi degli errori. Azioni, schermate e componenti del modulo hanno una vasta gamma di "proprietà dello script" che consentono di personalizzare il comportamento del programma di installazione.

Per install4j, posso rispondere alle vostre esigenze singoli:

assicurarsi che ci sia un JRE sulla macchina (32 o 64 bit)

Nella procedura guidata dei media, selezionare un fascio JRE. Se selezioni l'opzione "Bundle dinamico", verrà scaricata solo se non viene trovato alcun JRE adatto.

enter image description here

Installare Tomcat (32 o 64 bit)

Suggerirei di aggiungere semplicemente la directory principale di un'installazione di Tomcat esistente per la struttura di distribuzione.

Per quanto riguarda il servizio, è possibile utilizzare l'utilità di avvio del servizio Tomcat dalla distribuzione Tomcat o creare un programma di avvio del servizio in install4j. In entrambi i casi è possibile utilizzare l'azione "Installa un servizio" al fine di installare il servizio.

I servizi generati hanno il vantaggio che un programma di installazione degli aggiornamenti sa che sono in esecuzione e li chiude automaticamente prima di installare nuovi file.

enter image description here

creare un database in Oracle o SQL Server (forniamo script SQL per questo)

utilizzare l'azione "Esegui file eseguibile o batch", al fine di eseguire questi script.

Scrivi alcuni valori nella nostra tabella delle impostazioni, come il nome host. (Può ottenere all'utente di verificare questi, ma non lo vogliono all'utente di avere a toccare loro in.

Qualsiasi tipo di interazione con l'utente è fatto con forme configurabili. Con un paio di componenti campo modulo di testo è possibile interrogare le impostazioni .

Questo funziona anche in modo trasparente nel programma di installazione console e il file di risposta generato automaticamente vi permetterà di automatizzare le installazioni in modalità automatica sulla base di una singola esecuzione del programma di installazione GUI.

enter image description here

Creare un file di proprietà connessioni (forniamo una mini app JAR per aiutare con questo) che siederà sotto Tomcat.

Se si dispone già di un file JAR, che lo fa, basta aggiungere sotto installer-> Custom Code & risorse e aggiungere un'azione "Esegui script" per l'installatore a utilizzare le classi nel file JAR.

Qualunque input dell'utente da componenti di modulo che sono stati salvati dell'installatore variabili sono accessibili con chiamate come

context.getVariable("greetingOption") 

nella proprietà di script dell'azione "Esegui script" (o qualsiasi altro script install4j).

Abbiamo due file WAR per la nostra attuale applicazione web. Questi possono essere suddivisi tra due macchine , ma per ora, si assume che entrambi vengano scaricati in Tomcat.

Se si aggiunge la struttura di directory Tomcat all'albero di distribuzione, è possibile eseguire il pre-deployment di questi file WAR. Altrimenti puoi usare le azioni "Copia file" per posizionare i file WAR ovunque.

Avviare Tomcat in modo che distribuisce le guerre

che è fatto con l'azione "avviare un servizio".