si (version.startsWith ("1,5")) { // faire quelque chose que le 1.5. * Manière }
est en fait une sorte de mauvaise idée. Idéalement, vous devriez utiliser des valeurs de chaînes absolues ici, car le compilateur GWT évaluera l'égalité et ajustera le code inaccessible à l'intérieur d'un if conditionnel à partir de la sortie compilée. Utiliser .startsWith signifie que tout le code se retrouvera dans l'application finale.
Malheureusement, la version GWT n'est pas une propriété de compilation. Peut-être la meilleure façon de le faire serait de créer une implémentation vide Generator qui retourne juste "ClassName15" ou "ClassName17" d'un appel dans votre module pour "ClassName". Vous pouvez alors, au moment de la compilation, appeler About.version() du générateur et découvrir quelle est la version au moment de la compilation.
Je ne pense pas. Pourquoi compileriez-vous pour deux sources GWT? Nous sommes allés de 1,5 à 1,7 sans problèmes. –
Nous avons fait. Mais dans un cas, l'ancien (1.5) et le nouveau (1.7) code compilé ne se comportent pas de la même manière. C'est une combinaison de Java et de scripts insérés natifs. Déplacer l'ancien code (1.5) vers les nouvelles interfaces supprimant tous les appels obsolètes est actuellement beaucoup de travail. – Drejc