Ant,Groovy,GWT使用AntBuilder调用GWT编译

时间:2011-12-18 00:37:29

标签: gwt ant groovy antbuilder

您好我正在努力创建一个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?

有谁能告诉我哪里出错了。

1 个答案:

答案 0 :(得分:0)

由于GWT编译器无法看到GWT_DuplicateFinder.gwt.xml文件,因此路径必定存在问题。你在路径中有src文件夹,没关系。因此,基本目录或工作目录可能不正确(或根本没有设置)。