2012-11-10 67 views
0

我有三個GWT項目。 2個常見的GWT(引導程序&數據傳輸對象)項目,它不包含任何UI部分。所以,我想編譯這兩個項目並創建jar,並希望將其包含在第三個GWT項目中。我在Eclipse中完成了[Project-> Export-> Jar file]。它工作正常。我想要做它的命令行或通過ant build.xml。如果你認識任何人,請你幫忙。如何將GWT項目編譯爲jar文件並將其添加到另一個GWT項目中?

回答

0

我們有一個類似的例子,這裏是我們用來爲我們的任務引擎構建一個外部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> 
0

我覺得,最簡單靈活的方法就是使用Maven。每個項目都代表存儲在本地存儲庫中的單獨Maven artefact。在您的主項目中,您應該做的一件事是將幾個依賴關係添加到您的POM文件中。而已。我長期使用這種模式。

相關問題