Ho da poco passato da JDK1.6 a JDK 1.7.Avviso eclissi: conversione deselezionata vs specifica ridondante degli argomenti tipo
ho questo codice:
SomeClass<SomeType> someVariable = new SomeClass<SomeType>(createSomeObject());
Ora sto ricevendo un avvertimento:
Redundant specification of type arguments <SomeType>
Se uso la soluzione rapida Eclipse mi dà questo:
SomeClass<SomeType> someVariable = new SomeClass<>(createSomeObject());
Quale risultati in
Got an exception - expecting EOF, found 'xyz'
xyz è l'elemento successivo nel testo del mio codice.
Quando rimuovo le parentesi angolari, ottengo questo avvertimento:
SomeClass is a raw type. References to generic type SomeClass<M> should be parameterized
Se posso aggiungere il parametro di tipo io alla fine con il primo avviso (spec ridondante ...)
WTF sta andando sopra?
Voglio mantenere entrambi gli avvisi e sto ancora utilizzando Eclipse 3.7.1. Non sono disposto ad aggiornare Eclipse, se esiste un altro modo per risolvere questo problema, poiché ci vorrà del tempo per configurarlo nel modo in cui lo voglio di nuovo.
Controlla l'impostazione "Compile alla versione" di Eclipse Java. Potrebbe ancora essere impostato su 1,6, anziché su 7 –
@MrSpoon Intendi "Livello di conformità del compilatore" in Conformità di Preferenze-Compilatore-JDK? Questo è impostato su 1.7. – Torsten
Sì, quello. È un peccato. L'errore "Hai un'eccezione" non mi sembra un errore standard del compilatore. Quindi, credo che provenga da un altro costruttore di Eclipse. Quali altri builder hai abilitato in "Progetto/Proprietà/Builder"? –