Come faccio a modificare il metodo set di firme che Eclipse automatico genera?
Domanda
Il mio progetto attuale ha la convenzione di codifica che le variabili d'istanza non sono mai indicati con il presente. prefisso e che i parametri non devono mai nascondere le variabili di istanza.
Ciò si traduce in setter che assomigliano:
public void setFoo(final Foo aFoo)
{
foo = aFoo;
}
Purtroppo Eclipse non genererà per me per impostazione predefinita. Ho trovato in stile codice posso ottenere vicino ad esso con l'aggiunta di una lista parametri prefisso, ma solo lo voglio applicare per impostare metodi e vorrei aggiungere il tag finale anche lì.
C'è un modo per raggiungere questo obiettivo utilizzando i modelli? Qualche altra configurazione?
Soluzione
Credo che attualmente l'unico modo per applicare i prefissi dei parametri per i metodi setter solo è quello di scrivere un nuovo modello per i metodi setter, ma questo modello non sarebbe stato utilizzato dal generatore di accesso. È possibile visualizzare un elenco di modelli esistenti in Finestra -> Preferenze -> Java -> Editor -> < strong> Modelli , vedere questo domanda per alcuni suggerimenti sulla creazione di un modello .
È possibile modificare le impostazioni di Eclipse per specificare prefissi e suffissi () per tutti i tipi di variabili sia a livello di spazio di lavoro o di progetto, questo si applicherà a tutti i metodi, però, non solo setter. È possibile utilizzare la funzione "Clean Up" per garantire i parametri sono definitive.
Per placare la vostra convention codice, è potrebbe specificare che tutte le variabili di istanza sono precedute, invece, in questo modo i parametri non ignorare le variabili di istanza, non si può decidere di farlo comunque.
prefissi variabili
Per modificare le impostazioni dell'area di lavoro, accedere a Finestra -> Preferenze -> Java -> Codice di stile , e quindi modificare la lista di usare i prefissi preferiti / suffissi.
Per modificare le impostazioni di progetto, aprire le proprietà del progetto ( Alt + Invio ), quindi seleziona Java Code Style , selezionare Attivare le impostazioni specifiche del progetto , quindi modificare le preferenze per quanto riguarda l'area di lavoro.
Per attivare un particolare prefisso solo per i metodi setter, che avrebbe dovuto approfondire i meccanismi interni dei modelli di codice per identificare e modificare il setter
parametri finali
Per garantire che tutti i parametri del metodo sono finali, è possibile modificare la Java ripulire processore aggiungere finale per i parametri. In Finestra -> Preferenze -> Java -> Codice di stile -> Clean Up , è possibile copiare o modificare il profilo attivo. Sotto la Codice di stile , seleziona Usa modificatore 'finale', ove possibile, in le dichiarazioni di variabile , quindi assicurare Il parametro sia selezionata. Clean Up verrà applicato quando si esegue Sorgente -> Clean Up
Per avere parametri finali applicati automaticamente ogni salvataggio, è possibile modificare il salvataggio azioni, in Finestra -> ** Preferenze -> Java -> Editor -> Salva azioni , assicurare Eseguire le azioni selezionate su Salva
Altri suggerimenti
Molto semplice ...
- Nel progetto, nella cartella principale del progetto, creare una cartella chiamata
.settings
(potrebbe già essere lì). - In questa cartella, creare un file di testo chiamato
org.eclipse.jdt.core.prefs
- In questo file, includere la seguente riga:
org.eclipse.jdt.core.codeComplete.argumentPrefixes=a
Questo è tutto, hai fatto. Si deve solo lavorare. Non riuscivo a trovare la documentazione adeguata per questo, ma qui ci sono alcune altre opzioni è possibile impostare:
org.eclipse.jdt.core.codeComplete.argumentPrefixes=
org.eclipse.jdt.core.codeComplete.argumentSuffixes=
org.eclipse.jdt.core.codeComplete.fieldPrefixes=
org.eclipse.jdt.core.codeComplete.fieldSuffixes=
org.eclipse.jdt.core.codeComplete.localPrefixes=
org.eclipse.jdt.core.codeComplete.localSuffixes=
org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
È possibile utilizzare veloce Codice Eclipse Plugin per farlo abbastanza facilmente.
Eclipse -> Preferenze -> Java -> Codice di stile -> Codice Modelli -> Codice