【问题标题】:How to compile GWT project to jar file and add it to another GWT project?如何将 GWT 项目编译为 jar 文件并将其添加到另一个 GWT 项目中?
【发布时间】:2012-11-10 12:24:37
【问题描述】:

我有三个 GWT 项目。 2 个常见的 GWT(Bootstrap & Data Transfer Objects) 项目,它不包含任何 UI 部分。所以,我想编译这两个项目并创建 jar 并希望将它包含在第三个 GWT 项目中。我已经在 Eclipse[Project->Export->Jar 文件] 中完成了。它工作正常。我想做命令行或通过 ant build.xml。如果你认识任何人,请你帮忙。

【问题讨论】:

    标签: gwt


    【解决方案1】:

    我们有一个类似的案例,这里是我们用来为我们的任务引擎构建一个外部 jar 的目标。这将从命令行为您构建一个 jar,该 jar 可以包含在其他项目中。在我们的例子中,我们有一个包含所有域对象和一些服务的大型项目。我们想将其包含在我们的任务引擎中。

      <target name="taskengine-jar" depends="enhance">
        <mkdir dir="build" />
        <mkdir dir="build/META-INF"/>
    
        <copy todir="build/META-INF">
          <fileset dir="src/META-INF">
            <include name="persistence.xml" />
            <include name="server.properties" />
            <include name="crypto.properties" />
            <include name="sqlDrivers.xml" />
          </fileset>
        </copy>
        <jar destfile="taskengine-jobs.jar">
          <fileset dir="war/WEB-INF/classes">
            <include name="com/hp/vf/server/**" />
            <include name="com/hp/vf/shared/**" />
          </fileset>
          <fileset dir="build">
            <include name="META-INF/**" />
          </fileset>
          <zipgroupfileset dir="war/WEB-INF/lib">
            <include name="axis2.jar" />
            <include name="javamail-1.4.4.jar" />
            <include name="commons-pool-1.6.jar" />
            <include name="openjpa-all-2.2.0.jar" />
            <include name="commons-logging-adapters-1.1.1.jar" />
            <include name="commons-logging-api-1.1.1.jar" />
            <include name="commons-vfs2-2.0.jar" />
            <include name="postgresql-9.0-801.jdbc4.jar" />
            <include name="poi-3.8-beta5-20111217.jar"/>
            <include name="poi-ooxml-schemas-3.8-beta5-20111217.jar"/>
            <include name="poi-ooxml-3.8-beta5-20111217.jar"/>
            <include name="itext-2.1.7.jar"/>
            <include name="REngine.jar" />
            <include name="Rserve.jar" />
            <include name="jsoup-1.6.1.jar" />
            <include name="jfreechart-1.0.13.jar" />
            <include name="jcommon-1.0.16.jar" />
          </zipgroupfileset>
          <fileset dir="war/WEB-INF/lib">
            <include name="addressing-1.1.1.mar" />
            <include name="rampart-1.1.mar" />
          </fileset>
    
        </jar>
        <delete dir="build" />
      </target>
    

    【讨论】:

      【解决方案2】:

      我认为,最简单灵活的方法是使用 Maven。每个项目代表存储在本地存储库中的单独 Maven 工件。在你的主项目中你应该做的只有一件事是向你的 POM 文件添加几个依赖项。就是这样。我使用这个架构很长时间了。

      【讨论】:

        猜你喜欢
        • 2011-01-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-07-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多