Una volta introdotto il tool jrecreate
, a titolo di esempio vediamo come creare una JRE personalizzata con un profilo minimo. L'esempio che esegue è realizzato all'interno di una macchina virtuale VMware con Linux Ubuntu 18 e Java SE 8/Java Embedded correttamente installati.
La directory di installazione di Java Embedded è rappresentata dal path /home/osboxes/jembedded/ejdk1.8.0_211
, che evidenziamo graficamente con l'immagine che segue:
Posizionandoci nella cartella bin
e digitiamo il comando jrecreate
per richiedere la creazione di una JRE con profilo compact1
:
./jrecreate.sh --profile compact1 --dest
/home/osboxes/jembedded/ejdk1.8.0_211/compact1JRE/
il risultato sarà la creazione della cartella compact1JRE
contenente la JRE generata:
In generale il contenuto della directory di destinazione per la JRE avrà la seguente struttura:
Directory | Descrizione |
---|---|
bin/ | Contiene i comandi della JRE con il Java application launcher come requisito minimo. |
lib/ | I file core della JRE, includendo classi, JVM, e altre risorse. |
release | Un file di testo che contiene le caratteristiche della JRE generata (versione Java, profilo, sistema operativo, architettura CPU..). |
bom | Un file di testo che documenta come sia stata creata la JRE. |
COPYRIGHT, LICENSE, README, THIRDPARTYLICENS e README.txt | Informazioni legali e altra documentazione. |
Deploy e verifica della JRE sul target device
Per eseguire un'immagine JRE sul dispositivo embedded, dobbiamo trasferire i file dalla directory di destinazione jrecreate
(--dest
) al file system del dispositivo di destinazione. Nel nostro caso la copia ricorsiva del contenuto della directory relativa alla JRE generata in precedenza sul dispositivo target, può essere realizzato dal seguente comando:
scp -r /home/osboxes/jembedded/ejdk1.8.0_211/compact1JRE/*
root@target:/opt/local/ejdk/
Per verificare che la JRE sia correttamente installata sul dispositivo di destinazione, eseguiamo il comando java
con l'opzione -version
sul dispositivo embedded:
ssh root@target java -version
L'output dovrebbe essere rappresentato da dettagli come il build number ed i componenti utilizzati.