2011-08-26 16 views
21

Ad esempio, JDK 7 è in grado di passare (stringa) anziché solo passare (numero/enum).Compatibilità GWT con JDK 7 nuove funzionalità

Se ho scritto un client GWT che ha switch (String) nel suo codice, ci saranno problemi?

switch (String) è uno dei problemi a cui riesco a pensare. Ci sono problemi di compatibilità oltre all'interruttore (stringa)?

+0

hai provato fuori? – helpermethod

+2

@OliverWeiler: non c'è niente di sbagliato nel chiedere anche se riesci a scoprirlo da solo. questa domanda/risposta mi ha salvato molto tempo. –

+0

È sempre possibile compilare con JDK7, ma non utilizzare le funzionalità. Rimane un'opzione. – Brian

risposta

11

GWT supporta ufficialmente solo Java 5. Esso supporta alcune delle Java 6, però, come ad esempio consentendo @Overrides sui metodi di applicazione di un metodo di interfaccia, e String.isEmpty (anche se quella è di circa l'emulazione runtime, quindi non è legato alla sintassi e il compilatore).

BTW, GWT utilizza Eclipse JDT per l'analisi e quello non è ancora stato rilasciato con il supporto per Java 7 (dovrebbe comunque essere really soon). Una volta fatto, GWT dovrebbe essere aggiornato per tenere conto del nuovo "syntax sugar" aggiunto da Java 7. Quando arriverà quel momento (che probabilmente non arriverà presto, ahimè), scommetto che le stringhe di accensione saranno essere una delle prime funzionalità supportate, dato che JavaScript lo supporta (quindi dovrebbe essere facile da tradurre da Java a JS come switch su un intero).

Vedi anche https://groups.google.com/d/topic/google-web-toolkit/dM8D9imIvAI/discussion

+1

Credo che Java 6 sia ufficialmente supportato. – anjanb

+0

Alcuni di Java 7 potrebbero essere supportati in futuro. Vedi, https://gwt-review.googlesource.com/#/c/2650/ e https://gwt-review.googlesource.com/#/c/2681/) – Gewthen

11

Come l'ultima risposta è da agosto 2011, ecco un aggiornamento per GWT 2.5: ancora nessun supporto per Java 7, vedere Release Notes for GWT 2.5 RC2 (nessun cambiamento da RC2 a 2.5 finale).

+0

Sembra così. Volevo provare a utilizzare java.util.Objects anziché quello di Guava, ma GWT si è soffocato su di esso, sebbene la classe sia nella lista bianca ufficiale. A meno che non mi sia sfuggito qualcosa nella configurazione ... – PhiLho

+2

Ecco un aggiornamento: lo sviluppo è già in corso, vedere il numero 7999 per i dettagli. Qualche giorno fa tutte le funzionalità di Java 7 sono state comunicate e passate per la revisione. L'emulazione runtime ha ancora bisogno di un po 'di lavoro. Vedere: http://code.google.com/p/google-web-toolkit/issues/detail?id=7999 – snorbi

+1

Un altro aggiornamento, seguendo il link da @snorbi: https://code.google.com/ p/google-web-toolkit/issues/detail? id = 8044 # c10 dall'11 settembre sembra contrassegnare Java 7 come "FixedNotReleased" per "Milestone-2_6" – jfrantzius

2

A partire da GWT 2,6

Java 7 è supportato ed è ora il default. (Questo può essere ignorato utilizzando -sourceLevel 6)

2.6 release notes

Problemi correlati