嗨,我正在创建一个groovy脚本来自动构建和打包gwt应用程序。
AntBuilder是Groovy的一部分,我非常喜欢这个概念。它确实有助于最终脚本的可读性。
然而,我有一些问题让我的脚本调用GWT编译器。代码如下:
ant.sequential{
path( id:"gwt.path" , location:"src", { fileset (dir:"${GWT_HOME}", includes:"gwt-dev.jar" ) } )
ant.java ( fork:true, maxmemory:"256M", classpathref:"gwt.path", classname:"com.google.gwt.dev.Compiler"
, { classpath { pathelement location:"src" }
classpath { pathelement location:"${GWT_HOME}/gwt-user.jar" }
classpath { pathelement location:"${WEB_INF}/classes" }
arg (value:"-war")
arg (value:"bin/www")
arg (value:"com/xxx/xxx/xx/xxx/xxx/GWT_DuplicateFinder")
}
)
}
据我所知,我已经正确地转换了等效的ant脚本(从以前在另一个gwt项目中使用的build.xml文件粘贴而来)。
<target name="web" depends="compile" description="GWT Web Compilation">
<mkdir dir="${gwt.web.out.dir}"/>
<java fork="true" maxmemory="256M" classpathref="gwt.path" classname="com.google.gwt.dev.Compiler">
<classpath>
<pathelement location="src"/>
<!-- Note the reference to the compiled java classes -->
<pathelement location="war/WEB-INF/classes"/>
</classpath>
<arg value="-war"/>
<arg value="bin/www"/>
<arg value="com/xxx/xxx/xx/xxx/xxx/GWT_DuplicateFinder"/>
</java>
</target>
得到的错误是:
[java] [ERROR] Unable to find 'com/xxx/xxx/xx/xxx/xxx/GWT_DuplicateFinder.gwt.xml' on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source?
谁能告诉我我哪里错了
既然GWT编译器看不到GWT_DuplicateFinder.gwt.xml
文件,那么路径一定有问题。路径中确实有src
文件夹,这很好。因此,可能基本目录或工作目录不正确(或根本没有设置)。