Pas réussi à résoudre classe via différé de liaison
//...some imports
public class Menu {
final MenuMaker myClass = GWT.create(MenuMaker.class); //ERROR
Mon ...gwt.xml:
...
<generate-with class="com.gwt.rebind.MenuGenerator">
<when-type-assignable class="com.gwt.client.MenuMaker" />
</generate-with>
...
Tout fonctionne parfaitement quand je lance la compilation dans DevMode mais quand je "Construire le projet avec le compilateur GWT", j'obtiens cette erreur:
[ERROR] Line 15: Failed to resolve 'com.gwt.client.MenuMaker' via deferred binding
Scanning for additional dependencies: jar:file:/C:/eclipse/plugins/com.google.gwt.eclipse.sdkbundle_2.4.0.v201208080121-rel-r42/gwt-2.4.0/gwt-user.jar!/com/google/gwt/dom/client/DOMImpl.java
[WARN] For the following type(s), generated source was never committed (did you forget to call commit()?)
[WARN] com.gwt.client.MenuMakerGen
[ERROR] Cannot proceed due to previous errors
À la fin de com.gwt.relier.MenuGenerator:
sourceWriter.commit(logger);
J'ai besoin d'aide.
Vous avez peut-être manqué, y compris le bol d'avoir com.gwt.client.MenuMaker dans le build path pour le Compilateur GWT. Vérifiez aussi com.gwt.client.*gwt.xml est en place ( pas exlcuded par un filtre ).
MenuMaker est ma classe. Je ne sais pas qui bibliothèques nécessaires pour différés contraignant, mais le mode de développement toutes les de travail. Et quel filtre tu parles?
Si vous utilisez Maven
MenuMaker est ma classe. Je ne sais pas qui bibliothèques nécessaires pour différés contraignant, mais le mode de développement toutes les de travail. Et quel filtre tu parles?
Si vous utilisez Maven
.xml
fichiers doivent être placés dans src/main/resources
dans le même package (chemin d'accès au dossier) que votre .java
fichier. Si l'utilisation de Ant, assurez-vous d'ajouter .xml
votre chemin de classe. Si vous utilisez Eclipse w/ m2e de soutien, parfois, le chemin de génération ignore .xml
s'il était placé dans src/main/resources
, ... modifier le chemin de génération de projet à projet via les préférences.OriginalL'auteur burtsevyg | 2012-12-25
Vous devez vous connecter pour publier un commentaire.
Vérifiez si tous vos clients classes par défaut, zéro paramètre du constructeur. J'ai eu le même différée "de liaison", et il s'est avéré que l'une de mes classes n'avait pas de constructeur par défaut. C'était étrange, parce que cette classe n'était même pas mentionné dans le compilateur GWT journal.
OriginalL'auteur maciekb
Vérifier gwt-des problèmes à la compilation. Le message
peut entraîner des problèmes à la compilation de votre code gwt. Dans mon cas, c'était une classe, qui n'était disponible que sur le côté serveur de l'application, mais a été référencé dans une classe appartenant à "partagée" de la partie de l'application.
En Java il compilé bien, donc je n'avais pas d'erreur dans eclipse. Ci-dessus le message d'erreur n'est apparu que lors de sa construction avec maven. Elle resta un peu difficile de trouver le vrai problème, comme le texte du message n'était pas très utile.
Il s'est avéré, que l'exécution de l'application sur com.google.gwt.dev.DevMode serait de produire une plus détaillée du fichier journal de l'gwt-compilation (probablement, on pourrait configurer maven pour faire la même chose?).
Dès le début de ce journal plus détaillé, il y avait des entrées, qui m'a signalé le problème décrit ci-dessus. Après la correction de ces problèmes, le "pas réussi à résoudre ... via différé de liaison"-erreur a disparu.
OriginalL'auteur Jens Bühring
Dans mon cas, certaines classes de modèles n'ont pas été mise en œuvre de com.google.gwt.de l'utilisateur.client.rpc.IsSerializable, c'est pourquoi j'ai obtenu l'erreur mentionné dans la question.
OriginalL'auteur Jayram Kumar
Dans mon cas, une clé de regroupement de Ressources fichier de propriétés qui correspond le nom de la méthode a disparu et que le problème résolu après l'ajout d'.
OriginalL'auteur Mehmet Ali