2010-11-23 7 views
2

Je peux compiler avec succès la source, mais quand je frappe cette tâche fourmi:projet GWT utilisant Compiler Guice avec ANT

<target name="gwtc" depends="javac" description="GWT compile to JavaScript"> 
    <java failonerror="true" fork="true" classname="com.google.gwt.dev.Compiler"> 
     <classpath> 
     <pathelement location="src"/> 
     <path refid="project.class.path"/> 
     </classpath> 
     <jvmarg value="-Xmx256M"/> 
     <arg line="${gwt.args}"/> 
     <arg value="com.jwavro.jaguar.jaguar"/> 
    </java> 
    </target> 

Je reçois ces erreurs:

gwtc: 
    [java] Compiling module com.jwavro.jaguar.jaguar 
    [java] Scanning for additional dependencies: generated://9161C2B729E3521B2A51CBE6F2AE8A77/com/unnison/framework/client/GeneratedGinInjector.java 
    [java]  Computing all possible rebind results for 'com.unnison.framework.client.GeneratedGinInjector' 
    [java]   Rebinding com.unnison.framework.client.GeneratedGinInjector 
    [java]    Invoking generator com.google.gwt.inject.rebind.GinjectorGenerator 
    [java]    [ERROR] Generator 'com.google.gwt.inject.rebind.GinjectorGenerator' threw an exception while rebinding 'com.unnison.framework.client.GeneratedGinInjector' 
    [java] com.google.inject.CreationException: Guice creation errors: 
    [java] 
    [java] 1) No implementation for javax.inject.Provider was bound. 
    [java] while locating javax.inject.Provider 
    [java]  for parameter 9 at com.google.gwt.inject.rebind.BindingsProcessor.(BindingsProcessor.java:209) 
    [java] at com.google.gwt.inject.rebind.GinjectorGeneratorModule.configure(GinjectorGeneratorModule.java:59)

Guice liaison est censé être automatique, aucune idée de comment le réparer?

Répondre

1

Guice ne peut pas être utilisé directement avec GWT. Vous devez utiliser GIN.

+1

La question a été taguée avec Gin, donc j'espère * qu'il le savait déjà :-) – Snekse

+0

Maintenant que je regarde la question, je vois qu'elle a été éditée, alors peut-être que l'article original n'a pas été posté t tagué avec Gin. – Snekse

0

Il y a deux choses auxquelles je peux penser. Tout d'abord, assurez-vous que vous avez bien hérité du module GIN dans votre module GWT xml:

<module> 
    ... 
    <inherits name="com.google.gwt.inject.Inject"/> 
    ... 
</module> 

En second lieu, il faut être prudent sur les versions de GIN et Guice. Sur la page d'accueil GIN il dit:

GIN 1.0 nécessite ... et Guice 2,0

Pour Gin 1,5 vous aurez besoin d'utiliser l'instantané Guice distribué avec Gin ou ... Guice 3.0

Assurez-vous donc d'avoir le JAR Guice approprié dans le chemin.