Appunti su java per applicazioni windows

In generale, tipi di file e installazione

Nell’ambito dei computer, java è un linguaggio di programmazione ad oggetti nato agli inizi degli anni ’90 con lo scopo di far girare i programmi su più sistemi operativi. Ormai da tempo e salvo eccezioni all’interno del pacchetto java trovi anche l’access bridge, che tradotto alla buona significa accesso al ponte o ponte di accesso, che in precedenza doveva essere scaricato a parte e che per quanto visto finora serve a chi usa tecnologie assistive come sintesi vocali, barre braille e forse anche ingranditori.
Per la completa funzionalità e accessibilità di certi programmi che girano su linux, mac, solaris, windows e del browser è necessario installare java anche se al momento attuale so davvero poco su cosa comporta la mancata installazione e quindi non approfondisco per non dire stupidaggini. Comunque rispetto agli standard odierni java è un piccolo programma che non dà fastidio se lo installi anche quando non è necessario o strettamente necessario.
Ormai da diverso tempo il sito ufficiale che distribuisce java è
www.oracle.com
da cui è possibile accedere al sito
www.java.com
che java utilizza per gli aggiornamenti e la guida ed in modo particolare alla sezione italiana
www.java.com/it
che, soprattutto in certi periodi, ho trovato meno completa rispetto ad oracle in inglese.
Per un download semplificato puoi andare anche nella sezione programmi del mio sito
www.centroelettronica.info/prg/programmi.html
dove ho inserito le versioni più aggiornate e complete di java runtime environment per windows trovate ad aprile 2018 e che tuttavia puoi scaricare anche se è passato un po’ di tempo da quella data perché tanto java si aggiorna.
Per lo scaricamento nei siti ufficiali tieni presente quanto segue:
La sigla
java se
significa java standard edition;
i file il cui nome inizia con
jre
indicano che il pacchetto contiene
java runtime environment
il quale serve a far girare i programmi compilati;
i file il cui nome comincia con
jdk
contengono il pacchetto
java development kit
adatto a far girare i programmi sorgente e quindi agli sviluppatori in java. Tuttavia se non sei uno sviluppatore e hai erroneamente scaricato un file che inizia con jdk e desideri solo far girare i programmi compilati, puoi installarlo ugualmente perché al suo interno trovi anche il jre, java runtime environment, e le due sezioni non si danno fastidio ma, ovviamente, occuperanno un po’ di spazio in più.
Nel sito di oracle i file vengono suddivisi per sistema operativo: linux, mac, solaris e windows; per quest’ultimo, che ho guardato maggiormente mentre per gli altri non so, c’è un’ulteriore suddivisione per i 32 e 64 bit. Per entrambe vi sono piccoli file per l’installazione online, ossia quelli che una volta scaricati installano il programma collegandosi nuovamente alla rete, e file più grandi per l’installazione offline che personalmente preferisco perché può capitare di dover fare manutenzione ad un pc senza la possibilità di collegarlo ad internet. I file offline, non ricordo bene gli altri, contengono il numero di versione, ad esempio la 8, e, se necessario, la lettera u ed il numero di update, ad esempio u171; successivamente il nome prosegue con il sistema operativo e il numero 586 per i 32 bit ed x64 ovviamente per i 64 bit. Quindi un tipico nome di file per i 64 bit sarà:
jre-8u171-windows-x64.exe
Ciò nonostante, e solo nel sito oracle e solo per i 64 bit, ho trovato una versione 10 di java runtime environment con firma digitale inferiore all’update più recente della 8 e la cosa mi risulta strana (vedi l’apposito paragrafo in seguito per i dettagli). Le versioni di java provate sono per Windows 7 e 10 e
l’installazione di quelle offline viste finora non danno problemi salvo il fatto che per chi adopera la sintesi vocale una volta cliccato sul file d’installazione a volte si fa un po’ fatica ad acchiappare la finestra. Inoltre, e non in tutte le versioni, se hai il router scollegato, al termine dà un errore e devi chiudere la finestra perché tenta di verificare se la versione installata è quella giusta ma noi siamo intelligenti e non abbiamo bisogno di tale verifica! Se le applicazioni lo richiedono, in un sistema a 64 bit puoi installare entrambe le versioni di java e naturalmente quella a 64 bit metterà la cartella java all’interno della cartella programmi mentre quella a 32 lo farà all’interno della cartella programmi (x86). All’interno di java trovi la sottocartella con la versione di java in uso e faccio notare che nel caso si tratti della versione 8 il nome non comincia con tale numero ma jre1.8 forse perché tiene conto del build.
Nota: per quel poco che ne so, la versione di un programma rappresenta il numero dato ad un software con determinate funzioni le quali, se tolte o aggiunte, fanno cambiare il numero di versione. Il build dovrebbe essere il numero dato alle correzioni di una determinata versione senza che siano state tolte o aggiunte delle funzioni; naturalmente se qualcuno ne sa di più mi può anche smentire, non sono un programmatore!
Java viene inserito anche in internet explorer come componente aggiuntivo che, come gli altri, puoi abilitare o disabilitare a piacere. Una sera ebay era diventato “appiccicoso”! Non riuscivo a scorrere velocemente e pensavo fosse java a scocciare ma la mattina seguente ho verificato che non era lui ed il sito funzionava bene.

Se la sintesi vocale non legge il pannello di controllo java e attivazione di access bridge

Java possiede un suo pannello di controllo che serve per le impostazioni e l’aggiornamento e al quale si può accedere dal menu Start o dal pannello di controllo di windows. Fermo restando che con le versioni 8 32 bit provate finora l’assistente vocale di windows 10 non legge un fico secco, se anche con Jaws ed NVDA non leggi un accidente i problemi possono essere due:
• access bridge non è attivo
• c’è un problema con il file di access bridge in system32.

Attivare access bridge

Come dicevo all’inizio, le ultime versioni di java contengono access bridge e te ne puoi rendere conto verificando che nel tuo computer ci siano i file seguenti.
Sottocartella bin della versione di java in uso:
JawtAccessBridge.dll per i 32 bit oppure JawsAccessBridge-64.dll ovviamente per i 64;
Sottocartella \lib\ext della versione di java in uso:
Access-bridge.jar per i 32 bit e Access-bridge-64.jar per i 64 bit;
ancora nelle sottocartelle \lib\ext:
jaccess.jar per 32 e 64 bit;
Sottocartella \windows\system32:
WindowsAccessBridge.dll per i 32 bit e WindowsAccessBridge-64.dll per i 64 bit.
Non escludo che vi possa essere qualche altro file che fa funzionare access bridge.
Per default in certe versioni di java, access bridge è disattivato mentre in altre è attivo e quindi non rimane che provare ad attivarlo verificando successivamente se il pannello di controllo java viene letto dalla sintesi vocale. Infatti, che io sappia, non c’è nessun comando che mi dica lo stato attuale di access bridge e dando ripetutamente il comando per attivarlo o disattivarlo dice sempre che è stato attivato o disattivato a seconda dei casi ma non dice mai che era già attivo o disattivo. Inoltre finora non ho trovato un servizio o un file che mi dica lo stato di access bridge, magari ce l’ho sotto il naso ma… L’attivazione o la disattivazione di access bridge si fa tramite l’eseguibile jabswitch che trovi nella sottocartella bin della versione di java in uso e che deve essere richiamato dal prompt dei comandi o da Esegui di windows anche se in quest’ultimo caso la sintesi vocale non ti dice che l’hai attivato o disattivato. Qualche volta windows 10 diventa buono e puoi andare al prompt dei comandi anche senza aprirlo come amministratore e, supponendo di voler regolare la versione 8 update 171 a 64 bit scrivi il comando seguente:
c:\programmi\\java\jre1.8.0_171\bin\jabswitch /enable
avrai il messaggio in inglese stramaledetto che access bridge è stato ben attivato. Se il comando ti risulta troppo complesso, oltre a metterlo in un bat o in un cmd, lo puoi spezzare a piacere entrando nelle cartelle che costituiscono il percorso con cd e poi dando il comando finale. Inoltre, se nel frattempo la versione di java è diventata la novantamila, ovviamente adeguerai il percorso a tale numero astronomico. Prima di provare il pannello di controllo java, scarica e ricarica jaws in modo che veda l’attivazione di access bridge. Inoltre, jaws 16 caricato con l’avvio del pc a volte non tiene conto dell’attivazione di access bridge e quindi prima di dire che il pannello di controllo java non funziona, anche in questo caso scarica e ricarica jaws.
Se per delle verifiche vuoi disabilitare access bridge ti basta dare il comando:
C:\programmi\java\jre-1.8.0_171\bin\jabswitch /disable

Se il pannello di controllo java non viene ancora letto dalla sintesi vocale

Se nonostante l’attivazione di Access Bridge quella schifosa di sintesi vocale non si decide a dirti le opzioni del pannello di controllo java, il problema potrebbe essere dovuto ad un aggiornamento come raccontato di seguito. Avevo java versione 8 update 162 a 32 bit e mi ero stufato di sentire il messaggio relativo alla disponibilità dell’aggiornamento e, nonostante il solito clicca qui, in windows 7 non riuscivo a cliccare nel punto giusto per eseguirlo. Quindi sono andato nel pannello di controllo java e nella scheda relativa alle impostazioni degli aggiornamenti ho cliccato su Aggiorna ora. Prima viene scaricato l’installer e poi esegue l’installazione della nuova versione, niente di difficile. All’inizio il pannello di controllo java veniva letto dalla sintesi mentre in seguito mi prendeva in giro leggendomi solo il titolo della finestra… sai che soddisfazione! Di access bridge e dintorni ne sapevo assai poco e quindi ci ho messo un bel po’ a scoprire l’inghippo costituito dal fatto che in system32 non c’era più la libreria WindowsAccessBridge.dll ed in pratica succede questo: l’aggiornamento da 162 a 171 non rimuove immediatamente e non sovrascrive il file WindowsAccessBridge che tuttavia e stranamente viene rimosso al prossimo riavvio o comunque nei prossimi riavvii quando ovviamente l’aggiornamento è terminato da un pezzo e quindi rimani senza la libreria che tuttavia serve alla sintesi vocale per leggere il pannello di controllo java e la prova è che se, quando c’è, provi a cancellarla, ti dice che è in uso dallo screen reader. Tornando alla libreria mancante e siccome il problema scritto sopra potrebbe capitare anche con altri update di java, per rimpiazzarla hai tre possibilità:
• metterci quella della versione precedente preventivamente salvata;
• inserirvi quella che trovi nelle access bridge che ho messo anche nella sezione programmi del mio sito
www.centroelettronica.info/prg/programmi.html
• rimuovere java e installare la versione desiderata.
Faccio notare che dalle prove fatte finora la libreria funziona anche se di diversa versione e faccio anche notare che installando da zero la versione 8 update 171 mette regolarmente la libreria al suo posto e quindi il problema è solo con l’aggiornamento.

ja

va runtime environment 10.0.1

L’ho inserita nella sezione programmi del mio sito
www.centroelettronica.info/prg/programmi.html
ma per quanto scritto di seguito questa versione di java rimane per me abbastanza misteriosa e quindi se ne sai qualcosa fammi sapere.
La trovo solo nel sito oracle e solo per i 64 bit e queste sono le prime cose strane; l’aggiornamento della versione 8 non passa mai a questa versione 10. Nelle cartelle di java non inserisce i file di access bridge visti in precedenza e addirittura nella sottocartella lib manca la sottocartella ex; mette invece WindowsAccessBridge-64.dll in system32 anche se per quanto scritto qui sotto non serve ad un fico secco. Non si capisce se per default access bridge è attivato o disattivato, ma vista la mancanza dei file di access bridge nelle cartelle java, forse jabswitch non ha alcun effetto e il messaggio che dà è fittizio. Ciò nonostante Il pannello di controllo java viene letto da jaws e addirittura dall’assistente vocale e continua a funzionare anche togliendo WindowsAccessBridge-64.dll in system32; le schede del pannello di controllo java vengono viste come pulsanti e c’è qualche opzione in più rispetto alla versione 8. Il pannello di controllo java e l’apposita voce del menu start non mi danno la versione di java in uso. Mettendo nel computer anche la versione 8 update 171 a 64 bit ed indipendentemente dal fatto che la s’installi prima o dopo della 10.0.1, prevale il pannello di controllo java della versione 10. Per il momento non so altro.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *