2010-03-27 6 views
3

Je sais que le travail serait plus simple si j'utilisais Google Plugin pour Eclipse.Comment déboguer GWT en utilisant Ant

Cependant, dans ma situation, j'ai lourdement adapté Maven et ainsi, le plugin ne me convient pas. (En fait, ça m'a donné toute la semaine de mal de tête).

Au contraire, je comptais sur un script ant que j'appris de http://code.google.com/webtoolkit/doc/latest/tutorial/appengine.html

Le document est très clair; Je suis l'article et invoqué avec succès DevMode en utilisant ant devmode. Cependant, le document ne m'a pas parlé du débogage de GWT (comme Google Plugin for Eclipse peut le faire). Fondamentalement, je veux ajouter un paramètre à une tâche ant qui expose un port de débogage (quelque chose comme (com.google.gwt.dev.DevMode at localhost: 58807)) afin que je puisse connecter mon éclipse à.

Comment puis-je faire cela?

Répondre

5

Je l'ai fait avec succès cette tâche avec la fourmi suivante (le fichier build.xml se trouve à la racine du projet GWT):

<target name="devmode" description="Run development mode"> 
    <java failonerror="true" fork="true" classname="com.google.gwt.dev.DevMode"> 
     <classpath> 
      <pathelement path="${project.class.path}" /> 
      <pathelement path="${project.src.path}" /> 
     </classpath> 
     <jvmarg value="-Xmx512M" /> 
     <jvmarg value="-Xdebug" /> 
     <jvmarg value="-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000" /> 
     <arg value="-startupUrl" /> 
     <arg value="http://localhost/whatever" /> 
     <arg value="-noserver" /> 
     <!-- Additional arguments like -style PRETTY or -logLevel DEBUG --> 
     <arg value="-war" /> 
     <arg value="." /> 
     <arg value="-logLevel" /> 
     <arg value="DEBUG" /> 
     <arg value="com.example.Application" /> 
    </java> 
</target> 

Ensuite, je créé un lanceur « application Java à distance » qui se connecte à cette session de débogage avec "Type de connexion" défini sur "Standard", "Hôte" défini sur le nom d'hôte de la machine et "Port" sur 8000.

Ne l'avez pas testé depuis longtemps, mais cela a fonctionné avant :)

+0

Pour le meilleur de ma mémoire, comme je l'ai commenté juste en dessous de ma question, y Vous devez placer chacun des arguments ('-Xdebug',' -Xnoagent', '-Djava.compiler = NONE',' -Xrunjdwp') sur une balise jvmArg séparée pour que le débogage fonctionne. –

Questions connexes