Ho un'app Java da distribuire e voglio distribuire la JVM insieme a essa (per semplificare l'installazione). Voglio che la JVM sia ridotta per includere solo i pezzi di cui l'app ha bisogno per mantenere il piccolo distribuibile. Come posso rimuovere la JVM per ridurre le dimensioni? Questo può essere fatto con lo Java Kernel o c'è qualche alternativa a Sun JVM che è un'installazione molto più piccola? La mia piattaforma di destinazione è Windows.Come rimuovere la JVM per ottenere l'installazione più piccola possibile?
risposta
penso che le vostre esigenze si confondono: la distribuzione del JVM con un app semplifica tua lavoro perché non c'è bisogno di preoccuparsi di versioni JVM - ma può essere un notevole fastidio per gli utenti che non vogliono avere dozzine di JVM installate solo per semplificare i lavori dei programmatori. Non dovresti preoccuparti di questo tanto quanto delle dimensioni della distribuzione?
Direi che il meglio che puoi fare è utilizzare il codice JavaScript Deployment Toolkit per distribuire l'applicazione tramite Java WebStart e specificare un'installazione di Kernel Java. Ciò assicura che una nuova JVM sia installata solo quando effettivamente necessaria. Per il resto del tempo non è necessario installare nulla tranne la tua app, nel migliore dei casi.
È più che per le persone, come mia madre, che non capiranno perché il programma che stanno cercando di installare sta chiedendo questa cosa Java. Se posso usare qualcosa di molto piccolo per la JVM inclusa, non devo preoccuparmi che gli utenti debbano provare a gestire l'installazione di + JVM dell'app. –
Non vedo come la dimensione abbia nulla a che fare con la facilità di installazione. –
Ecco tre idee:
- Usa GCJ per compilare l'applicazione in codice macchina, quindi aggiungere quali parti del classpath di cui avete bisogno.
- Scarica Kaffe e elimina le parti non necessarie.
- Afferra lo Java source code e elimina le parti non necessarie.
Buona fortuna.
Il kernel Java sembra quello che stai cercando. Ma perché non dipendere solo da un'installazione JVM standard? È raggruppato e gestito da qualcun altro; perché complicare troppo le cose? –
Principalmente perché l'app è davvero piccola e non voglio una JVM da 85+ MB per eseguirla. Forse avrei dovuto usare qualcosa di diverso da Java ... –
Converti il tuo codice in C# e gli utenti dovranno installare 400+ MB .net Framework. –