Opzioni di runtime Eclipse

Ultima modifica 14:45 mercoledì 4 agosto, 2004

La piattaforma Eclipse è estremamente configurabile. La configurazione avviene attraverso argomenti della riga comandi e impostazioni delle proprietà del sistema. In molti casi gli argomenti della riga comandi non sono altro che scelte rapide per l'impostazione delle proprietà di sistema correlate. In realtà, esistono molte più impostazioni delle proprietà di sistema che argomenti della riga comandi.

Argomenti della riga comandi

Di seguito sono elencati gli argomenti della riga comandi elaborati da varie parti del runtime Eclipse. Gran parte di questi valori può essere specificata anche utilizzando proprietà di sistema sulla riga comandi mediante argomenti -D VM o specificando tali valori in un file config.ini. Quest'ultima tecnica consente di personalizzare Eclipse senza utilizzare affatto gli argomenti della riga comandi.

Per ogni argomento dell'elenco, viene fornita in {} la chiave della proprietà di sistema corrispondente. Viene fornito anche il layer di runtime Eclipse in cui viene elaborato l'argomento della riga comandi (in ()). Esso risulta utile per coloro che sostituiscono parti del runtime per soddisfare esigenze particolari.

-application <id> (Runtime)
equivale a impostare eclipse.application su <id>
-arch <architecture> (OSGi)
equivale a impostare osgi.arch su <architecture>
-clean (OSGi) NEW
equivale a impostare osgi.clean to "true"
-configuration <location> (Main)
equivale a impostare osgi.configuration.area su <location>
-console [port] (OSGi) NEW
equivale a impostare osgi.console su [port] o la stringa aperta se è necessario utilizzare la porta predefinita (quando la porta non è specificata)
-consoleLog (Runtime)
equivale a impostare eclispe.consoleLog su "true"
-data <location> (OSGi)
equivale a impostare osgi.instance.area su <location>
-debug [options file] (OSGi)
equivale a impostare osgi.debug su [options file] o la stringa vuota sull'abilitazione del debug (se il percorso di options file non è specificato)
-dev [entries] (OSGi)
equivale a impostare osgi.dev su [entries] o la stringa vuota sull'abilitazione della modalità dev (se le voci (entries) non sono specificate)
-endSplash <command> (Main)
specifica il comando da utilizzare per chiudere la schermata introduttiva. Generalmente viene fornito dall'eseguibile di Eclipse.
-feature <feature id> (Runtime)
equivale a impostare eclipse.product su <feature id>
-framework <location> (Main) NEW
equivale a impostare osgi.framework su <location>
-initialize (Main)
inizializza la configurazione in esecuzione. Vengono aggiornate tutte le cache e le strutture dei dati relativi al runtime. Tutti i dati di configurazione definiti dall'utente/plug-in non vengono eliminati. Non viene eseguita alcuna applicazione, le specifiche di prodotto vengono ignorate e non viene presentata alcuna UI (ad esempio la schermata introduttiva non viene visualizzata).
-install <location> (Main)
equivale a impostare osgi.install.area su <location>
-keyring <location> (Runtime)
il percorso del database delle autorizzazioni sul disco. Questo argomento deve essere utilizzato insieme all'argomento -password.
-nl <locale> (OSGi)
equivale a impostare osgi.nl su <locale>
-noLazyRegistryCacheLoading (Runtime)
equivale a impostare eclipse.noLazyRegistryCacheLoading su "true"
-noRegistryCache (Runtime)
equivale a impostare eclipse.noRegistryCache su "true"
-noSplash (Executable, Main)
controlla la visualizzazione della schermata introduttiva
-os <operating system> (OSGi)
equivale a impostare osgi.os su <operating system>
-password <password> (Runtime)
la password per il database delle autorizzazioni
-pluginCustomization <location> (Runtime)
equivale a impostare eclipse.pluginCustomization su <location>
-product <id> (OSGi) NEW
equivale a impostare eclipse.product su <id>
-showSplash <command> (Main)
specifica il comando da utilizzare per visualizzare la schermata introduttiva. Generalmente viene fornito dall'eseguibile di Eclipse.
-user <location> (OSGi) NEW
equivale a impostare osgi.user.area su <location>
-vm <path to java executable> (Executable, Main) NEW
quando viene trasmessa all'eseguibile di Eclipse, questa opzione viene utilizzata per trovare la Java VM da utilizzare per l'esecuzione di Eclipse. È necessario che sia il percorso del filesystem completo di un eseguibile Java appropriato. Se non viene specificata, l'eseguibile di Eclipse utilizza un algoritmo di ricerca per trovare una VM adatta. In ogni caso, l'eseguibile trasmesse il percorso della VM effettiva utilizzata da Java Main attraverso l'argomento -vm. Java Main memorizza quindi questo valore in eclipse.vm.
-vmargs [vmargs*] (Executable, Main) NEW
quando viene trasmessa a Eclipse, questa opzione viene utilizzata per personalizzare le operazioni della Java VM da utilizzare per l'esecuzione di Eclipse. Se specificata, questa opzione deve trovarsi alla fine della riga comandi. Anche se non viene specificata sulla riga comandi dell'eseguibile, quest'ultimo aggiungerà automaticamente gli argomenti rilevanti, inclusa la classe avviata, alla riga comandi trasmessa a Java utilizzando l'argomento -vmargs. Java Main memorizza quindi questo valore in eclipse.vmargs.
-ws <window system> (OSGi)
equivale a impostare osgi.ws su <window system>

Argomenti della riga comandi obsoleti

Gli argomenti della riga comandi riportati di seguito non sono più rilevanti o sono stati sostituiti e vengono elaborati dal runtime senza essere trasmessi all'applicazione in esecuzione per garantire la compatibilità con le versioni precedenti. .

-boot
vedere -configuration
-classLoaderProperties
non più rilevante
-firstUse
non più rilevante
-newUpdates
non più rilevante
-noPackagePrefixes
non più rilevante
-noUpdate
non più rilevante
-plugins
non più rilevante
-update
non più rilevante

Altri

Gli argomenti della riga comandi riportati di seguito sono definiti da vari plugin di Eclipse e vengono supportati solo se il plugin di definizione è installato, risolto e attivato.

-noVersionCheck (workbench)
<description>
-perspective (workbench)
<description>
-refresh (org.eclipse.core.resources)
<description>
-showLocation (org.eclipse.ui.ide.workbench)
<description>
-allowDeadlock
<description>

Proprietà di sistema

Le proprietà di sistema riportate di seguito vengono utilizzate dal runtime di Eclipse. Tenere presente che quelle precedute da "osgi" sono specifiche dell'implementazione del framework OSGi, a differenza di quelle precedute da "eclipse" che sono specifiche del runtime di Eclipse ad un livello superiore rispetto al framework OSGi.

La maggior parte di queste proprietà presenta un equivalente della riga comandi (vedere la sezione argomenti della riga comandi e il valore in parentesi quadre {}). Per specificare un valore, gli utenti hanno la possibilità di scegliere se utilizzare la riga comandi o le impostazioni della proprietà. Le proprietà possono essere impostate nei seguenti modi:

eclipse.application {-application}
identificativo dell'applicazione da eseguire. Il valore specificato sostituisce qualsiasi applicazione definita dal prodotto in fase di esecuzione (vedere eclipse.product)
eclipse.commands
sdf
eclipse.consoleLog
se è "true", qualsiasi output di log viene inviato anche a System.out di Java (generalmente alla shell comandi, se disponibile). Risulta utile se combinato a -debug
eclipse.debug.startupTime
il tempo in millisecondi in cui la Java VM relativa a questa sessione è stata avviata
eclipse.exitcode
<description>
eclipse.exitdata
<description>
eclipse.manifestConverter
il nome della classe della classe converter manifest da utilizzare durante la conversione dei file plugin.xml legacy in file manifest.mf
eclipse.noExtensionMunging
se "true", l'estensione del registro non viene modificata. Per impostazione predefinita, tali estensioni vengono aggiornate affinché possano utilizzare gli ID dei nuovi punti di estensione trovati in Eclipse 3.0.
eclipse.noLazyRegistryCacheLoading {-noLazyRegistryCacheLoading}
se è "true", l'ottimizzazione del caricamento della cache del registro del plugin della piattaforma viene disattivata. Per impostazione predefinita, gli elementi di configurazione vengono caricati dalla cache del registro (se disponibile) solo su richiesta, riducendo il carico della memoria. Questa opzione fa sì che la cache del registro venga caricata completamente all'avvio.
eclipse.noRegistryCache {-noRegistryCache}
se è "true", la cache del registro dell'estensione interna non viene né letta né scritta
eclipse.pluginCustomization {-pluginCustomization}
il percorso di un file delle proprietà contenente impostazioni predefinite per le preferenze di plugin. Tali impostazioni predefinite sovrascrivono quelle specificate nella funzione principale. I percorsi relativi vengono intesi come relativi alla directory di lavoro corrente di eclipse.
eclipse.product {-product}
identificativo del prodotto in esecuzione. Controlla varie informazioni di identificazione e l'applicazione utilizzata.
eclipse.vm {-vm}
il percorso dell'eseguibile Java utilizzato per eseguire Eclipse. Tali informazioni vengono utilizzate per creare righe comandi di riavvio.
eclipse.vmargs {-vmargs}
elenca gli argomenti VM utilizzati per eseguire Eclipse. Tali informazioni vengono utilizzate per creare righe comandi di riavvio.
osgi.adaptor
il nome della classe dell'adattatore del framework OSGi da utilizzare.
osgi.arch {-arch}
see -arch
osgi.baseConfiguration.area
asf
osgi.bundles
L'elenco separato da virgole di insiemi che vengono automaticamente installati e facoltativamente avviati quando il sistema è in funzione. Ogni voce presenta il seguente formato:
    <URL | simple bundle location>[@ [<start-level>] [":start"]]
Se start-level (>0 integer) viene omesso, il framework utilizzerà quello predefinito per l'insieme. Se il tag "start" viene aggiunto, l'insieme verrà contrassegnato come avviato dopo l'installazione. I percorsi degli insiemi semplici vengono interpretati come relativi rispetto alla directory principale del framework. start-level indica il livello di avvio (start level) OSGi sul quale deve essere eseguito l'insieme. Se questo valore non viene impostato, il sistema calcola un valore predefinito appropriato.
osgi.clean
se impostato su "true", tutti i dati memorizzati nella cache utilizzati dal framework OSGi e dal runtime eclipse verrabbi eliminati. In tal modo le cache utilizzate per memorizzare la risoluzione di dipendenza degli insiemi e i dati del registro eclipse. L'uso di questa opzione fa sì che eclipse inizializzi nuovamente le cache.
osgi.configuration.cascaded
se impostata su "true", questa configurazione viene sovrapposta a una configurazione principale. Per informazioni più dettagliate, vedere la sezione relativa ai Percorsi.
osgi.configuration.area {-configuration}
il percorso di configurazione per questa esecuzione della piattaforma. La configurazione determina i plugin che verranno eseguiti oltre a varie altre impostazioni di sistema. Per informazioni più dettagliate, vedere la sezione relativa ai Percorsi.
osgi.configuration.area.default
il percorso di configurazione predefinito per questa esecuzione della piattaforma. La configurazione determina i plugin che verranno eseguiti oltre a varie altre impostazioni di sistema. Questo valore, vale a dire l'impostazione predefinita, viene utilizzato solo se non è stato impostato alcun valore per osgi.configuration.area. Per informazioni più dettagliate, vedere la sezione relativa ai Percorsi.
osgi.console {-console}
se impostato su un valore non-null, viene abilitata la console OSGi (se installata). Se il valore è un intero appropriato, viene interpretato come la porta su cui la console si mette in ascolto e indirizza l'output alla porta di destinazione. Utile per verificare lo stato del sistema.
osgi.console.class
il nome della classe della console da eseguire se necessario
osgi.debug {-debug}
se impostato su un valore non-null, la piattaforma viene posta in modalità debug. Se il valore è una stringa, viene interpretato come il percorso del file .options. Questo file indica i punti di debug disponibili per un plugin e l'eventuale attivazione degli stessi. Se non viene specificato un percorso, la piattaforma cerca il file .options nella directory di installazione.
osgi.dev {-dev}
se impostato su una stringa vuota, la modalità dev viene semplicemente attivata. Questa proprietà può anche essere impostata sulle voci di un percorso classi separate da virgole, che vengono aggiunte al percorso classi di ogni plugin o un URL a un file delle proprietà Java contenente aggiunte del percorso classi personalizzate per un insieme di plugin. Per ciascun plugin che richiede un percorso classi dev time personalizzato, il file conterrà una voce del modulo
    <plug-in id>=<comma separated list of classpath entries to add>
dove plug-in id "*" corrisponde a qualsiasi plugin altrimenti non citato.
osgi.framework
il percorso dell'URL del framework OSGi. Utile se l'installazione di Eclipse avviene separatamente. Per informazioni più dettagliate, vedere la sezione relativa ai Percorsi.
osgi.frameworkClassPath
un elenco di voci separate da virgole del percorso classi per l'implementazione del framework OSGi. I percorsi relativi vengono interpretati come relativi rispetto al percorso del framework (vedere osgi.framework)
osgi.install.area {-install}
il percorso di installazione della piattaforma. Questa impostazione indica il percorso dei plugin Eclipse di base ed è utile se l'installazione di Eclipse avviene separatamente. Per informazioni più dettagliate, vedere la sezione relativa ai Percorsi.
osgi.instance.area {-data}
il percorso dei dati dell'istanza per questa sessione. I plugin utilizzano questo percorso per memorizzare i propri dati. Ad esempio, il plugin Resources lo utilizza come percorso predefinito per i progetti (noto anche come spazio di lavoro). Per informazioni più dettagliate, vedere la sezione relativa ai Percorsi.
osgi.instance.area.default
il percorso dei dati dell'istanza predefinito per questa sessione. I plugin utilizzano questo percorso per memorizzare i propri dati. Ad esempio, il plugin Resources lo utilizza come percorso predefinito per i progetti (noto anche come spazio di lavoro). Questo valore, vale a dire l'impostazione predefinita, viene utilizzato solo se non è stato impostato alcun valore per osgi.instance.area. Per informazioni più dettagliate, vedere la sezione relativa ai Percorsi.
osgi.manifest.cache
il percorso in cui i manifest generati vengono rilevati e generati. Quello predefinito è nell'area di configurazione, ma la cache dei manifest può essere memorizzata separatamente.
osgi.nl {-nl}
il nome delle impostazioni internazionali su cui verrà eseguita la piattaforma Eclipse. I valori NL devono seguire le convenzioni di denominazione delle impostazioni internazionali Java standard.
osgi.os {-os}
il valore del sistema operativo. Il valore deve essere uno dei nomi dell'architettura del processore Eclipse noto a Eclipse (ad esempio, x86, sparc, ...).
osgi.splashLocation
il percorso dell'URL assoluto della schermata introduttiva (file .bmp) da visualizzare durante l'avvio di Eclipse. Questa proprietà sostituisce qualsiasi valore impostato in osgi.splashPath.
osgi.splashPath
un elenco di URL separati da virgole per la ricerca di un file denominato splash.bmp. Questa proprietà viene sostituita da qualsiasi valore impostato in osgi.splashLocation.
osgi.user.area {-user}
il percorso dell'area utente. L'area utente contiene dati (ad esempio preferenze) specifiche dell'utente del sistema operativo e indipendente da qualsiasi installazione, configurazione o istanza di Eclipse. Per informazioni più dettagliate, vedere la sezione relativa ai Percorsi.
osgi.user.area.default
il percorso predefinito dell'area utente. L'area utente contiene dati (ad esempio preferenze) specifiche dell'utente del sistema operativo e indipendente da qualsiasi installazione, configurazione o istanza di Eclipse. Questo valore, vale a dire l'impostazione predefinita, viene utilizzato solo se non è stato impostato alcun valore per osgi.user.area. Per informazioni più dettagliate, vedere la sezione relativa ai Percorsi.
osgi.ws {-ws}
il valore ws (window system). Tale valore dovrebbe essere uno dei nomi del sistema ws noti a Eclipse (ad es., win32, motif, ...).
osgi.syspath
<xxx still used? fix the name>

Percorsi

Il runtime di Eclipse definisce una serie di percorsi che forniscono agli sviluppatori dei plugin il contesto per la lettura/memorizzazione dei dati e agli utenti di Eclipse un controllo sull'ambito della condivisione e della visibilità dei dati. Eclipse definisce le seguenti nozioni di percorso:

User (-user) {osgi.user.area} [@none, @noDefault, @user.home, @user.dir, filepath, url]
Naturalmente i percorsi utente sono specifici degli utenti. Generalmente si basano sul valore della proprietà di sistema user.home Java, ma questa può essere sostituita. Informazioni quali le preferenze di ambito dell'utente e sul login sono disponibili proprio all'interno del percorso utente.
Install (-install) {osgi.install.area} [@user.home, @user.dir, filepath, url]
Per percorso di installazione si intende il percorso in cui viene installato Eclipse. In pratica questo percorso è la directory (generalmente "eclipse") principale del file startup.jar o eclipse.exe in esecuzione. Tale percorso dovrebbe essere considerato di sola lettura dagli utenti normali in quanto un'installazione potrebbe essere condivisa da molti utenti. È possibile impostare il percorso di installazione e separare startup.jar dal resto di Eclipse.
Configuration (-configuration) {osgi.configuration.area} [@none, @noDefault, @user.home, @user.dir, filepath, url]
I percorsi di configurazione contengono file che identificano e gestiscono il sottoinsieme di un'installazione da eseguire. Pertanto, ogni installazione può presentare molte configurazioni. Le installazioni possono presentare un'area di configurazione predefinita ma gli scenari di avvio tipici prevedono il tentativo da parte del runtime di trovare un percorso di configurazione più scrivibile.
Instance (-data) {osgi.instance.area} [@none, @noDefault, @user.home, @user.dir, filepath, url]
I percorsi dell'istanza contengono risorse dei dati definiti dall'utente. Ad esempio, il plugin Resources utilizza l'area delle istanze come percorso dello spazio di lavoro che diventa quindi il percorso principale predefinito per i progetti. Gli altri plugin possono scrivere tutti i file che preferiscono in questo percorso.

Sebbene gli utenti possano impostare qualsiasi percorso, Eclipse calcolerà valori predefiniti appropriati se non viene fornito alcun valore. L'utilizzo più comune per l'impostazione del percorso è l'area delle istanze o, nel contesto dell'IDE, lo spazio di lavoro. Per eseguire la configurazione di Eclipse predefinita su un insieme di dati specifico, è possibile specificare:

    eclipse -data c:\mydata

Ulteriori informazioni

I percorsi sono URL. Per semplificare le cose, vengono accettati anche i percorsi dei file, automaticamente convertiti in file: URL. Per esercitare un maggiore controllo e per comodità, sono disponibili anche diversi percorsi simbolici predefiniti che è possibile utilizzare. Tenere presente che non tutte le combinazioni di tipo di percorso e valore simbolico sono valide. In una tabella che segue sono riportate tutte le combinazioni possibili. Poiché è necessario impostare la combinazione maiuscole/minuscole predefinita per tutti i percorsi, valida e con accesso in scrittura, è possibile che alcuni plugin non funzionino in altre installazioni anche se sono indicati come possibili. Ad esempio, è impossibile prevedere che un plugin concentrato sui dati dell'utente (ad esempio il plugin Resources di Eclipse) possa essere efficace se l'area dell'istanza non è definita. Spetta agli sviluppatori del plugin scegliere le impostazioni supportate e progettare la funzione di conseguenza.

@none
Indica che il percorso corrispondente non deve essere mai impostato esplicitamente o sul valore predefinito. Ad esempio, un'applicazione con lo stile RCP che non presenta dati utente può utilizzare osgi.instance.area=@none per impedire che file estranei vengano scritti su disco. @none non deve essere seguito da alcun segmento di percorso aggiuntivo.
@noDefault
Impone la mancata definizione o la definizione esplicita di un percorso (vale a dire Eclipse non calcola automaticamente un valore predefinito). Ciò risulta utile laddove si desidera consentire la presenza di dati nel percorso corrispondente ma il valore predefinito Eclipse non è appropriato. @noDefault non deve essere seguito da alcun segmento di percorso aggiuntivo.
@user.home
Fa sì che Eclipse elabori un valore del percorso relativo alla directory principale dell'utente. @user.home può essere seguito da segmenti di percorso aggiuntivi. In tutti i casi, la stringa "@user.home" viene semplicemente sostituita dal valore della proprietà di sistema "user.home" Java. Ad esempio, l'impostazione
    osgi.instance.area=@user.home/myWorkspace
restituisce un valore
    file:/users/bob/myWorkspace
@user.dir
Fa sì che Eclipse elabori un valore del percorso relativo alla directory di lavoro corrente. @user.dir può essere seguito da segmenti di percorso aggiuntivi. In tutti i casi, la stringa "@user.dir" viene semplicemente sostituita dal valore della proprietà di sistema "user.dir" Java. Ad esempio, l'impostazione
    osgi.instance.area=@user.dir/myWorkspace
restituisce un valore
    file:/usr/share/eclipse/myWorkspace
percorso/valore
supporta l'impostazione predefinita
file/URL
@none
@noDefault
@user.home
@user.dir
istanza
sì (impostazione predefinita)
configurazione
sì*
sì*
installazione
no
no
no
utente

* indica che questa installazione è tecnicamente possibile ma piuttosto difficile da gestire in pratica. In particolare, senza un percorso di configurazione, il runtime di Eclipse può solo avviare il framework OSGi.

Informazioni particolari.