Nota: Prima di utilizzare questo prodotto e le relative informazioni, leggere le informazioni contenute nella sezione Informazioni particolari.
Questa edizione del README si riferisce a IBM Developer Kit for Windows, Java 2 Technology Edition, Version 1.3.1, 32- bit version ed a tutti i successivi rilasci e modifiche se non diversamente specificato in nuove edizioni.
(c) Copyright Sun Microsystems, Inc. 1997, 2001, 901 San Antonio Rd., Palo Alto, CA 94303 USA. Tutti i diritti riservati.
(c) Copyright International Business Machines Corporation, 1999, 2002. Tutti i diritti riservati.
Limitazioni per gli utenti degli Stati Uniti d'America. L'uso, la duplicazione o la divulgazione sono limitati dal GSA ADP Schedule Contract con l'IBM Corporation.
Questo file README fornisce informazioni sul pacchetto Runtime Environment fornito con IBM(R) Developer Kit for Windows(R), Java(TM) 2 Technology Edition, Version 1.3.1, 32-bit version. Usare questo README se si pianifica di distribuire il Runtime Environment con il proprio prodotto.
Il Runtime Environment è supportato sui seguenti prodotti:
Runtime Environment contiene Java Virtual Machine (JVM), le classi Sun Microsystems Java e i file di supporto. Runtime Environment non contiene tutte le classi disponibili nel pacchetto del Developer Kit.
Runtime Environment include file .dll oltre a classi per il supporto di Java al momento dell'esecuzione. Runtime Environment non include strumenti di sviluppo, come, ad esempio, appletviewer oppure javac, oppure classi specifiche di un sistema di sviluppo.
Consultare Requisiti di redistribuzione per informazioni sui file da redistribuire con i programmi Java.
Il compilatore JIT crea dinamicamente un codice macchina per le sequenze di codici di byte di uso frequente nelle applet o applicazioni Java durante l'esecuzione. Per impostazione predefinita, è abilitato il compilatore JIT (jitc.dll).
Per individuare un problema relativo ad un'applicazione Java, ad un'applet o al compilatore stesso, è possibile disabilitare il JIT.
Ci sono due modi per disabilitare il JIT:
set JAVA_COMPILER=NONE
Su Windows NT, Windows 2000 e Windows XP, è possibile impostarein modo permanente JAVA_COMPILER dalle impostazioni di ambiente del sistema operativo. Per Windows NT, selezionare il pannello di controllo, poi System ed infine Environment. Per Windows 2000 e Windows XP, selezionare il pannello di controllo e System, e su Advanced selezionare Environment Variables).
java -Djava.compiler=NONE myapp
Per abilitare il JIT, immettere quanto segue in una richiesta comandi:
set JAVA_COMPILER=jitc
Per verificare se JIT è attivato, in una richiesta comandi immettere:
java -version
Se il JIT è in uso, viene visualizzato un messaggio che riporta la seguente informazione:
JIT enabled: jitc
In caso contrario, viene visualizzato il seguente messaggio:
JIT disabled
Per ricevere il numero di build e della versione IBM, digitare quanto segue in una richiesta comandi:
java -version
Per eseguire un'applicazione Java, immettere quanto segue in una richiesta comandi:
java classname
dove classname
è il nome del file di classe Java
(applicazione Java) che si desidera eseguire. Per informazioni sui
parameteri utilizzabili durante il richiamo del tool java, consultare
Java Runtime Interpreter.
Nota: Se Runtime Environment non è stato installato come JVM del sistema, sarà necessario impostare il percorso in modo che includa le directory appropriate. Per aggiornare il percorso, immettere quanto segue in una richiesta comandi:
set path=javadir\jre\bin;%path%
dove javadir
è la directory in cui è stato installato il pacchetto
Runtime Environment.Per impostazione predefinita,
tale directory è
Quando si redistribuisce Runtime Environment, viene richiesto di includere file dal seguente pacchetto:
Per informazioni sui file che devono essere redistribuiti, consultare l'Accordo di licenza. Il termine richiesto indica che i concessionari di licenza che distribuiscono il runtime devono includere tali file nei loro programmi, indipendentemente dal loro effettivo utilizzo.
Runtime Environment include le directory \bin e \lib e le relative subdirectory. Queste devono risiedere nella stessa directory. La directory bin contiene file eseguibili e librerie native. La directory lib contiene le classi ed i file delle proprietà.
Tutti i file contenuti nelle directory bin e libsono obbligatorie per la redistribuzione.
Nota: La libreria runtime C del codice nativo, msvcrt.dll, è memorizzata nella directory di sistema di Windows. Accertarsi che il file si trovi nella directory di sistema Windows. L'ubicazione di tale directory varia a seconda dei sistemi operativi, ma, generalmente, si trova:
Il tool java richiama Java Runtime Interpreter per l'esecuzione delle applicazioni Java. La sintassi per l'avvio dello strumento java è la seguente:
java [-opzioni] nomeclasse <arg>
L'argomento nomeclasse
è il nome del file di classe
da eseguire. Gli argomenti da trasmettere alla classe dovranno essere posizionati dopo
classname sulla riga comandi.
java -jar [-opzioni] filejar <arg>
L'argomento filejar
è il nome del file jar da
eseguire. Gli argomenti da trasmettere al file jar devono essere
collocati dopo jarfile sulla riga comandi.
E' disponibile un metodo alternativo java, javaw. Lo strumento javaw è identico allo strumento java, ma la finestra della console non viene richiamata. La sintassi per l'avvio dello strumento javaw è la seguente:
javaw [opzioni] classname <args>
Di seguito sono riportate le opzioni per lo strumento java:
Le opzioni -X non sono standard e sono soggette a modifica senza preavviso.
La pagina web di Sun contiene un esempio "Hello World" e contiene informazioni relative alla creazione di una semplice applicazione Java fornita con Java Runtime Environment. Il sito della Sun è http://java.sun.com ed è possibile trovare l'esempio "Hello World" effettuando una ricerca di "Hello World" e di "Notes for Developers".
L'esempio illustra come eseguire una semplice transizione, dallo sviluppo di un'applicazione con Developer Kit alla sua distribuzione utilizzando Runtime Environment.
Nel proprio prodotto bisogna fornire un metodo per:
Se si ridistribuisce Runtime Environment, accertarsi che l'installazione non ricopra un'installazione esistente (a meno che non si tratti di una versione più recente di Java Runtime Environment).
Il migliore approccio consiste nel prendere i file contenuti nel file zip ridistribuibile Runtime Environment, ibm-jre-n131p-win32-x86.zip, e installarli nella stessa struttura di directory. Accertarsi di includere tutti i file nelle directory bin e lib e nelle relative sottodirectory. Queste directory sono descritte in Requisiti di redistribuzione. Il software di Runtime Environment può essere redistribuito solo se sono inclusi tutti i file. In effetti, quando viene fornita l'applicazione, essa dispone di una propria copia di Runtime Environment.
Se si utilizza tale approccio, non ripetere i passi di installazione eseguiti dal programma di installazione Runtime Environment.
Nota: Quando si installa Runtime Environment, bisogna registrare le informazioni del programma nel registro di Windows nel seguente modo:
Java2 Runtime Environment/1.3.1/JavaHome | root di java\jre |
Java2 Runtime Environment/1.3.1/RuntimeLib | root di java\jre\bin\classic\jvm.dll |
Java2 Runtime Environment/1.3.1/Microversion | 0 |
Java Plug-in/1.3.1/JavaHome | root di java\jre |
Java Plug-in/1.3.1/RuntimeLib | root di java\jre\bin\classic\jvm.dll |
Key name | Key value |
Lucida Sans Typewriter Regular (TrueType) | LucidaTypewriterRegular.ttf |
Lucida Bright Demibold Italic (TrueType) | LucidaBrightDemiItalic.ttf |
Lucida Bright Italic (TrueType) | LucidaBrightItalic.ttf |
Lucida Bright Regular (TrueType) | LucidaBrightRegular.ttf |
Lucida Sans Demibold (TrueType) | LucidaSansDemiBold.ttf |
Lucida Sans Demibold Oblique (TrueType) | LucidaSansDemiOblique.ttf |
Lucida Sans Oblique (TrueType) | LucidaSansOblique.ttf |
Lucida Sans Regular (TrueType) | LucidaSansRegular.ttf |
Lucida Sans Typewriter Bold (TrueType) | LucidaTypewriterBold.ttf |
Lucida Sans Typewriter Bold Oblique (TrueType) | LucidaTypewriterBoldOblique.ttf |
Lucida Sans Typewriter Oblique (TrueType) | LucidaTypewriterOblique.ttf |
Lucida Bright Demibold (TrueType) | LucidaBrightDemiBold.ttf |
Un esempio di percorso completo per il key value è:
Questo Developer Kit introduce l'opzione di runtime JVM -Xgcpolicy per la specifica della politica di raccolta dei dati obsoleti.
-Xgcpolicy può avere due valori, optthruput (il valore predefinito) e optavgpause. Questa opzione controlla il comportamento del programma di raccolta dei dati obsoleti, bilanciando il throughput dell'applicazione e del sistema in generale e le pause determinate dalla raccolta dei dati obsoleti.
Il formato dell'opzione ed i suoi valori sono:
-Xgcpolicy:optthrupute
-Xgcpolicy:optavgpause
Quando il tentativo di un'applicazione di creare un oggetto non può essere immediatamente soddisfatto dallo spazio disponibile nell'heap, il programma di raccolta dei dati obsoleti è responsabile dell'identificazione degli oggetti cui non si fa riferimento (obsoleti), della loro cancellazione e della reimpostazione dell'heap su uno stato in cui le immediate e successive richieste di allocazione possono essere soddisfatte rapidamente. Questi cicli di raccolta dei dati obsoleti causano delle occasionali pause impreviste nell'esecuzione del codice dell'applicazione. Quando la dimensione e la complessità delle applicazioni crescono, e gli heap diventano di conseguenza più grandi, questa pausa per la raccolta dei dati obsoleti tende a crescere. Il valore predefinito per la raccolta di dati obsoleti, optthruput, consente un elevato throughput alle applicazioni, ma possono verificarsi queste pause occasionali, che possono andare da alcuni millisecondi a molti secondi, sulla base della dimensione dell'heap e della quantità di dati obsoleti.
Il valore optavgpause riduce notevolmente il tempo speso in queste pause per la raccolta dei dati obsoleti e limita l'effetto della crescita della dimensione dell'heap sulla lunghezza della pausa di raccolta dei dati obsoleti. Questo è particolarmente importante nelle configurazioni con degli heap di notevoli dimensioni. Un heap può essere considerato di notevoli dimensioni quando raggiunge almeno un 1 GB. Le pause vengono ridotte sovrapponendo le attività di raccolta dei dati obsoleti alla normale esecuzione del programma. Questa sovrapposizione determina una piccola riduzione del throughput delle applicazioni.
Quando un heap Java è quasi pieno ed i dati obsoleti da eliminare sono pochi, è possibile che le richieste per nuovi oggetti non possano essere soddisfatte rapidamente poiché non c'è spazio immediatamente disponibile. Se l'heap viene utilizzato quando è quasi pieno, è possibile che le prestazioni delle applicazioni subiscano una riduzione, indipendentemente da quale delle opzioni sopra indicate viene utilizzata: e, se si continua ad inoltrare richieste per ulteriore spazio dell'heap, l'applicazione riceve un errore di Memoria esaurita che determina la chiusura del JVM se l'errore non viene rilevato e risolto. In queste situazioni, si consiglia di aumentare la dimensione dell'heap utilizzando l'opzione -Xmx oppure di ridurre il numero di oggetti di applicazione in uso.
Per ulteriori informazioni sulla regolazione della dimensione dell'heap e del possibile impatto della raccolta dei dati obsoleti sulle prestazioni delle applicazioni, consultare:
Sun fornisce Java Access Bridge per consentire alle tecnologie di assistenza native di Windows come lo screen reader, l'accesso al supporto Java Accessibility nell'applicazione Java. Queste devono essere essere state scritte per effettuare chiamate verso Java Access Bridge.
Java Access Bridge disponibile della Sun comprende un programma di installazione che colloca cinque file negli indirizzari appropriati: access-bridge.jar, jaccess.jar, accessibility.properties, JavaAccessBridge.dll e WindowsAccessBridge.dll.
Se è già stato installato IBM Accessibility Bridge (JawBridge), che consente a Windows 2000 Magnifier di funzionare con applicazioni Swing, e si vuole che esegua contemporaneamente Java Access Bridge, modificare il file accessibility.properties nel seguente modo:
#
al suo inizio per disattivare entrambi i bridge.
Il sito web di seguito riportato illustra come scaricare Java Access Bridge:
Ciascun file delle proprietà contiene informazioni relative all'utilizzo ed alla modifica del file.
Queste informazioni sono state sviluppate per prodotti e servizi offerti negli Stati Uniti d'America
E' possibile che la IBM non offra i prodotti, i servizi o le funzioni trattati in questo documento in altri paesi. Consultare il rappresentante commerciale IBM per informazioni relative ai prodotti e servizi disponibili nel proprio paese. Qualsiasi riferimento a prodotti, programmi o servizi IBM contenuti in questa pubblicazione non implica che possano essere utilizzati soltanto tali programmi, prodotti o servizi. In sostituzione a quelli forniti dall'IBM, possono essere usati prodotti, programmi o servizi funzionalmente equivalenti che non comportino violazione dei diritti di proprietà intellettuale. E' responsabilità dell'utente valutare e verificare la possibilità di utilizzare altri programmi e/o prodotti.
L'IBM può avere brevetti o domande di brevetto in corso relativi a quanto trattato nella presente pubblicazione. La fornitura di questa pubblicazione non implica la concessione di alcuna licenza su di essi. Chi desiderasse ricevere informazioni relative a licenze può rivolgersi per iscritto a:
Chi desiderasse ricevere delucidazioni sulle licenze relative alle informazioni DBCS, può contattare IBM Intellectual Property Department nel proprio paese o rivolgersi per iscritto a:
Il seguente paragrafo non è valido per il Regno Unito o per tutti i paesi le cui leggi nazionali siano in contrasto con le disposizioni in esso contenute:
L'IBM FORNISCE QUESTA PUBBLICAZIONE NELLO STATO IN CUI SI TROVA SENZA ALCUNA GARANZIA, ESPLICITA O IMPLICITA, IVI INCLUSE EVENTUALI GARANZIE DI COMMERCIABILITÀ' ED IDONEITÀ' AD UNO SCOPO PARTICOLARE. Alcune nazioni non escludono le garanzie implicite; di conseguenza la suddetta esclusione potrebbe, in questo caso, non essere applicabile.
Queste informazioni potrebbero contenere imprecisioni tecniche o errori tipografici. Le correzioni relative saranno incluse nelle nuove edizioni. L'IBM si riserva il diritto di apportare miglioramenti o modifiche al prodotto o al programma descritto in qualsiasi momento e senza preavviso.
Tutti i riferimenti a pubblicazioni e a siti Web non dell'IBM contenuti in questo documento sono forniti solo per consultazione. Il materiale presente sui siti web non fa parte di questo prodotto IBM e l'utente si assume ogni rischio relativo al suo utilizzo.
L'IBM può utilizzare o distribuire qualsiasi informazioni ricevute dagli utenti secondo le modalità ritenute appropriate, senza alcun obbligo nei loro confronti.
Coloro che detengono la licenza su questo programma e desiderano avere informazioni su di esso allo scopo di consentire: (i) uno scambio di informazioni tra programmi indipendenti ed altri (compreso questo) e (ii) l'uso reciproco di tali informazioni, dovrebbero rivolgersi a:
Queste informazioni possono essere rese disponibili secondo condizioni contrattuali appropriate, compreso, in alcuni casi, l'addebito di un canone.
Il programma su licenza descritto in queste informazioni e tutto il materiale su licenza ad esso relativo sono forniti dall'IBM nel rispetto delle condizioni previste dalla licenza d'uso.
I dati relativi alle prestazioni contenuti nel presente documento sono stati ottenuti in un ambiente controllato. Pertanto, i risultati ottenibili in altri ambienti operativi potrebbero variare significativamente. Alcune rilevazioni sono state effettuate su sistemi in fase di sviluppo e non si garantisce in alcun modo che tali rilevazioni siano uguali su tutti i sistemi. Inoltre, alcune rilevazioni non state effettuate tramite estrapolazione. Pertanto, i risultati effettivi possono essere differenti. Gli utenti devono verificare l'applicabilità dei dati negli specifici ambienti operativi.
Le informazioni relative a prodotti non IBM sono state ottenute dai fornitori di tali prodotti. L'IBM non ha verificato tali prodotti e, pertanto, non può garantirne l'accuratezza delle prestazioni. Eventuali commenti relativi alle prestazioni dei prodotti non IBM devono essere indirizzati ai fornitori di tali prodotti.
IBM è un marchio della International Business Machines Corporation.
Java e tutti i marchi ed i logo basati su Java sono marchi o marchi registrati della Sun Microsystems, Inc negli Stati Uniti e/o in altri paesi. La tecnologia Java è posseduta e concessa esclusivamente su licenza dalla Sun Microsystems, Inc.
Microsoft, Windows, Windows NT e i logo Windows sono marchi della Microsoft Corporation.
I nomi di altre società, prodotti e servizi potrebbero essere marchi di altre società.