Ho usato GWT da un po 'di tempo e ho usato il plugin eclipse per compilare i miei progetti finora. A causa di un nuovo requisito, ho bisogno di usare una formica (per la prima volta) per costruire un progetto gwt. Per prima cosa dirò che ho 2 moduli che hanno un entry point e altri 2 moduli comuni che contengono solo classi java (che dovrebbero essere tradotte in js) e siedono in un progetto diverso nel mio spazio di lavoro.Problema con la compilazione di un progetto gwt con formica
Attualmente ho il progetto GWT che richiede il progetto Common che a sua volta richiede il progetto DAL (quando dico implichi che è così definito nel percorso di costruzione del progetto eclipse). Nel mio progetto GWT ho, in una posizione appropriata, un file Common.gwt.xml e DAL.gwt.xml che li definiscono come moduli e il mio ModuleEntryPoint.gwt.xml eredita questi due moduli (oltre ad altri moduli). Quando attualmente utilizzo il plugin gwt eclipse per compilare tutto funziona bene.
Tuttavia, quando ho provato a simulare questo con la build di form, la compilazione del mio ModuleEntryPoint fallisce mentre il compilatore dice che non riesce a trovare fonti per le classi che appartengono al modulo DAL o al modulo Comune.
Il codice ant form è molto semplice in quanto questo è il mio primo tentativo.
Grazie in anticipo per qualsiasi aiuto concesso.
<path id="compile.classpath">
<fileset dir="${build.dir.WEB-INF.lib}">
<include name="**/*.jar" />
<include name="**/*.xml" />
</fileset>
<fileset dir="${ExternalLib.WebServer.dir}">
<include name="**/*.jar" />
<include name="**/*.xml" />
</fileset>
<fileset dir="${GWT.dir}">
<include name="**/*.jar" />
<include name="**/*.dll" />
</fileset>
</path>
<target name="clear_previous_war">
<delete dir="${build.dir}" />
<mkdir dir="${build.dir.WEB-INF.classes}"/>
<mkdir dir="${build.dir.WEB-INF.lib}"/>
<target name="build_common" >
<jar destfile="${build.dir.WEB-INF.lib}/${jar.common}"
basedir="${common.dir.build}"
includes="com/**"
excludes="**/.svn"
/>
</target>
<target name="build_dal" >
<jar destfile="${build.dir.WEB-INF.lib}/${jar.dal}"
basedir="${dal.dir.build}"
includes="com/**"
excludes="**/.svn"
/>
</target>
<target name="copy_additional_files" >
... Copies all required external jars to web-inf/lib
</target>
<target name="compile_web_classes" >
<javac srcdir="src" classpathref="compile.classpath"
destdir="${build.dir.WEB-INF.classes}"
source="1.6"/>
</target>
<target name="compile_gwt_button" description="GWT compile to JavaScript">
<java failonerror="true" fork="true" classname="com.google.gwt.dev.Compiler">
<classpath>
<pathelement location="${src.dir}" />
<path refid="compile.classpath" />
</classpath>
<jvmarg value="-Xmx256M" />
<arg value="com.myCompany.web.Button" />
</java>
</target>
<target name="deploy" description="Build web project">
<antcall target="clear_previous_war" />
<antcall target="build_common" />
<antcall target="build_dal" />
<antcall target="copy_additional_files" />
<antcall target="compile_web_classes" />
<antcall target="compile_gwt_button" />
</target>
Grazie mille ma penso di aver scoperto il problema. Nel task 'compile-gwt' non gli ho dato il percorso per le fonti dei moduli comuni (../Common/src etc) quindi l'ho aggiunto e funziona. Grazie. – Ittai