Utilizzo di Python / Ruby / Lua per gli script di avvio di Java

1

Ho un numero di diverse utility Java che vengono spedite insieme. Attualmente ci sono due script di avvio per ciascuna utility: un .sh uno per Linux e un .bat per Windows.

Sto pensando di riscrivere gli script di avvio usando Python, o forse Ruby, Perl, Lua o altri linguaggi di scripting. In questo modo evito di avere versioni diverse per ogni sistema operativo.

Questa è una buona idea? Ci sono progetti che già utilizzano questo approccio? Quale linguaggio di scripting sarebbe più adatto per l'attività?

Quali altre alternative esistono per evitare di avere separato .sh , .bat file per questo gruppo di utilità?

    
posta Daniel Díaz Carrete 21.03.2014 - 16:55
fonte

2 risposte

3

Non c'è modo di realizzare ciò che si vuole fare a meno che non si desideri consentire agli utenti di installare un'altra lingua solo per eseguire il software. Non puoi garantire che i tuoi utenti abbiano una lingua di scripting installata. Stai sostanzialmente spingendo l'inconveniente sui tuoi utenti chiedendo loro di installare qualcosa in più solo così gli script di avvio sono più facili da gestire.

C'è una soluzione a questo però: continua a spedire i tuoi file .sh e .bat in modo che il tuo software sia più comodo da usare, ma invece di gestirli separatamente scrivi uno script per generarli per te in {linguaggio di scripting a scelta}, possibilmente utilizzando {motore di template di tua scelta}, e fai in modo che il tuo processo di build esegua quello script per generare i tuoi file .bat / .sh. Ciò garantisce che la logica sia coerente tra le piattaforme e devi solo mantenere quella logica in un unico posto.

    
risposta data 21.03.2014 - 18:21
fonte
0

In questi casi, utilizzo gli script python compilati per gli utenti finali. Ciò garantisce una portabilità sufficiente e la semplicità del progetto. Inoltre, gli script condividono gli stessi file di configurazione dei prodotti. Non è una risposta. È solo un suggerimento. La tua domanda non è precisa.

    
risposta data 21.03.2014 - 18:06
fonte

Leggi altre domande sui tag