1. 程式人生 > >ant部署的幾個例子

ant部署的幾個例子

ant檔案放到D:\java_workspace\ap\專案下執行

1.完成專案的編譯工作。並打包jar檔案。到打包到專案的jar目錄中名為ap.jar目錄

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="build" name="ap">
    <property environment="env"/> 
    <property name="debuglevel" value="source,lines,vars"/>
	<property name="project.name" value="ap"/>
	<property name="project.publish.jar.file" value="jar/ap.jar"/>
    <property name="target" value="1.7"/>
    <property name="source" value="1.7"/> 
    <path id="Web App Libraries.libraryclasspath">
    	<fileset dir="WebRoot/WEB-INF/lib">
    		<include name="**/*.jar"/>
    	</fileset>
    </path>
    <path id="EAR Libraries.libraryclasspath"/>
    <path id="ap.classpath">
        <pathelement location="WebRoot/WEB-INF/classes"/> 
        <path refid="Web App Libraries.libraryclasspath"/> 
    </path>
    <target name="init">
        <mkdir dir="WebRoot/WEB-INF/classes"/>
        <copy includeemptydirs="true" todir="WebRoot/WEB-INF/classes">
            <fileset dir="src">
                <exclude name="**/*.launch"/>
                <exclude name="**/*.java"/>
                <exclude name="**/.svn/**"/>
            </fileset>
        </copy>
    </target>
    <target name="clean">
        <delete dir="WebRoot/WEB-INF/classes"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-subprojects,build-project" name="build"/>
    <target name="build-subprojects"/>
    <target depends="init" name="build-project">
        <echo message="${ant.project.name}: ${ant.file}"/>
    	<delete file="jar/ap.jar"/>
    	<javac debug="true" debuglevel="${debuglevel}" destdir="WebRoot/WEB-INF/classes" source="${source}" target="${target}" includeantruntime="on">
        	<compilerarg line="-encoding UTF-8" />
    		<!--<compilerarg value="-Xlint:unchecked"/>-->
            <src path="src"/>
            <exclude name="**/.svn/**"/>
            <classpath refid="ap.classpath"/>
        </javac> 
    	<jar jarfile="${project.publish.jar.file}" basedir="WebRoot/WEB-INF/classes"/>
    	<!--<delete dir="WebRoot/WEB-INF/classes"/>-->
    </target>
</project>


2.本地部署

將當前專案部署到webapps的ROOT目錄下

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="build" name="ap">
    <property environment="env"/> 
    <property name="debuglevel" value="source,lines,vars"/>
	<property name="project.source.home.path" value="D:/java_workspace"/>
	<property name="project.publish.home.path" value="D:/java_dev/tomcat-6.0.35/webapps"/>	
	<property name="project.name" value="ROOT"/>
	<property name="project.publish.jar.file" value="${project.publish.home.path}/${project.name}/WEB-INF/lib/ap.jar"/>
    <property name="target" value="1.7"/>
    <property name="source" value="1.7"/> 
	
	 
	
    <path id="Web App Libraries.libraryclasspath">
    	<fileset dir="WebRoot/WEB-INF/lib">
    		<include name="**/*.jar"/>
    	</fileset>
    </path>
    <path id="EAR Libraries.libraryclasspath"/>
    <path id="ap.classpath">
        <pathelement location="WebRoot/WEB-INF/classes"/> 
        <path refid="Web App Libraries.libraryclasspath"/> 
    </path>
    <target name="init">
    	<delete dir="${project.publish.home.path}/${project.name}"/>
    	<mkdir dir="${project.publish.home.path}/${project.name}" />
    	<antcall target="checkout" />
        <mkdir dir="WebRoot/WEB-INF/classes"/>
        <copy includeemptydirs="false" todir="WebRoot/WEB-INF/classes">
            <fileset dir="src">
                <exclude name="**/*.launch"/>
                <exclude name="**/*.java"/>
                <exclude name="**/.svn/**"/>
            </fileset>
        </copy>
    </target>
    <target name="clean">
        <delete dir="WebRoot/WEB-INF/classes"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-subprojects,build-project" name="build"/>
    <target name="build-subprojects"/>
    <target depends="init" name="build-project">
        <echo message="${ant.project.name}: ${ant.file}"/>
    	<delete dir="D:/java_dev/tomcat-6.0.35/webapps/ROOT"/>
    	<delete file="jar/ap.jar"/>
    	<copy includeemptydirs="true" todir="${project.publish.home.path}/${project.name}">
			<fileset dir="WebRoot">
				<include name="/" />
				<exclude name="**/.svn/**"/>
			</fileset>
    	</copy>
    	<javac debug="true" debuglevel="${debuglevel}" destdir="WebRoot/WEB-INF/classes" source="${source}" target="${target}" includeantruntime="on">
        	<compilerarg line="-encoding UTF-8" />
            <src path="src"/>
            <exclude name="**/.svn/**"/>
            <classpath refid="ap.classpath"/>
        </javac> 
    	<jar jarfile="${project.publish.jar.file}" basedir="WebRoot/WEB-INF/classes"/>
    	<delete dir="WebRoot/WEB-INF/classes"/>
    	<delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    </target>
</project>

3.從svn,打包jar並部署到本地伺服器。export
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="build" name="ap">
    <property environment="env"/> 
    <property name="debuglevel" value="source,lines,vars"/>	
	<property name="ant.home" value="D:/java_dev/apache-ant-1.8.3"/>
	<property name="project.source.home.path" value="D:/java_dev/tomcat-6.0.35/webapps/ROOT/src"/>
	<property name="project.publish.home.path" value="D:/java_dev/tomcat-6.0.35/webapps"/>
	<property name="project.name" value="ROOT"/>
	<property name="project.publish.jar.file" value="${project.publish.home.path}/${project.name}/WEB-INF/lib/ap.jar"/>
    <property name="target" value="1.7"/>
    <property name="source" value="1.7"/>
	<path id="Web App Libraries.libraryclasspath">
    	<fileset dir="${project.publish.home.path}/${project.name}/WEB-INF/lib">
    		<include name="**/*.jar"/>
    	</fileset>
    </path>
    <path id="EAR Libraries.libraryclasspath"/>
    <path id="ap.classpath">
        <pathelement location="${project.publish.home.path}/${project.name}/WEB-INF/classes"/> 
        <path refid="Web App Libraries.libraryclasspath"/> 
    </path>
	<path id="svnant.classpath">
		 <fileset dir="${ant.home}/lib">
			<include name="**/*.jar"/>
		</fileset>
	</path>
	<taskdef  name="svn" classname="org.tigris.subversion.svnant.SvnTask" classpathref="svnant.classpath"/>
	<property name="svn.url" value="http://www.xxxx.com/svn/ap/trunk/source/ap"/> 
	<target name="checkout">
        <svn javahl="false" username="liuyuqiang" password="121044208">
			<checkout url="${svn.url}/WebRoot" revision="HEAD" destPath="${project.publish.home.path}/${project.name}" />
			<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.publish.home.path}/${project.name}/src" /> 
        	<!--
        	<export srcUrl="${svn.url}/WebRoot" revision="HEAD" destPath="${project.publish.home.path}/${project.name}" />
        	<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.publish.home.path}/${project.name}/src" />        	
			<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.source.home.path}" />
			-->
        </svn>
	</target>
    <target name="init">
    	<echo message="${ant.project.name}: ${ant.file}"/>
		<delete dir="${project.source.home.path}"/>
    	<antcall target="checkout" />
        <mkdir dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>		 
        <copy includeemptydirs="false" todir="${project.publish.home.path}/${project.name}/WEB-INF/classes">
            <fileset dir="src">
                <exclude name="**/*.launch"/>
                <exclude name="**/*.java"/>
                <exclude name="**/.svn/**"/>
            </fileset>
        </copy>
    </target>
    <target name="clean">
        <delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-subprojects,build-project" name="build"/>
    <target name="build-subprojects"/>
    <target depends="init" name="build-project"> 
		<mkdir dir="${project.publish.home.path}/${project.name}/WEB-INF/lib"/>
    	<javac debug="true" debuglevel="${debuglevel}" destdir="${project.publish.home.path}/${project.name}/WEB-INF/classes" source="${source}" target="${target}" includeantruntime="on">
        	<compilerarg line="-encoding UTF-8" />
            <src path="src"/>
            <exclude name="**/.svn/**"/>
            <classpath refid="ap.classpath"/>
        </javac>
    	<jar jarfile="${project.publish.jar.file}" basedir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    	<delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    	<delete dir="${project.source.home.path}"/>
    </target>
</project>


4.從svn進更新,打包jar包到lib

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="build" name="ap">
    <property environment="env"/> 
    <property name="debuglevel" value="source,lines,vars"/>	
	<property name="ant.home" value="D:/java_dev/apache-ant-1.8.3"/>
	<property name="project.source.home.path" value="D:/java_dev/tomcat-6.0.35/webapps/ROOT/src"/>
	<property name="project.publish.home.path" value="D:/java_dev/tomcat-6.0.35/webapps"/>
	<property name="project.name" value="ROOT"/>
	<property name="project.publish.jar.file" value="${project.publish.home.path}/${project.name}/WEB-INF/lib/ap.jar"/>
    <property name="target" value="1.7"/>
    <property name="source" value="1.7"/>
	<path id="Web App Libraries.libraryclasspath">
    	<fileset dir="${project.publish.home.path}/${project.name}/WEB-INF/lib">
    		<include name="**/*.jar"/>
    	</fileset>
    </path>
    <path id="EAR Libraries.libraryclasspath"/>
    <path id="ap.classpath">
        <pathelement location="${project.publish.home.path}/${project.name}/WEB-INF/classes"/> 
        <path refid="Web App Libraries.libraryclasspath"/> 
    </path>
	<path id="svnant.classpath">
		 <fileset dir="${ant.home}/lib">
			<include name="**/*.jar"/>
		</fileset>
	</path>
	<taskdef  name="svn" classname="org.tigris.subversion.svnant.SvnTask" classpathref="svnant.classpath"/>
	<property name="svn.url" value="http://www.xxxx.com/svn/ap/trunk/source/ap"/> 
	<target name="checkout">
        <svn javahl="false" username="liuyuqiang" password="121044208">
        	<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.source.home.path}" />
        	<!--
        	<checkout url="${svn.url}/WebRoot" revision="HEAD" destPath="${project.publish.home.path}/${project.name}" />
        	<export srcUrl="${svn.url}/WebRoot" revision="HEAD" destPath="${project.publish.home.path}/${project.name}" />
        	<export srcUrl="${svn.url}/src" revision="HEAD" destPath="${project.publish.home.path}/${project.name}/src" />
        	-->
        </svn>
	</target>
    <target name="init">
    	<echo message="${ant.project.name}: ${ant.file}"/>
		<delete dir="${project.source.home.path}"/>
    	<antcall target="checkout" />
        <mkdir dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>		 
        <copy includeemptydirs="false" todir="${project.publish.home.path}/${project.name}/WEB-INF/classes">
            <fileset dir="src">
                <exclude name="**/*.launch"/>
                <exclude name="**/*.java"/>
                <exclude name="**/.svn/**"/>
            </fileset>
        </copy>
    </target>
    <target name="clean">
        <delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    </target>
    <target depends="clean" name="cleanall"/>
    <target depends="build-subprojects,build-project" name="build"/>
    <target name="build-subprojects"/>
    <target depends="init" name="build-project">
		<!--
		<mkdir dir="${project.publish.home.path}/${project.name}/WEB-INF/lib"/>
		-->
    	<javac debug="true" debuglevel="${debuglevel}" destdir="${project.publish.home.path}/${project.name}/WEB-INF/classes" source="${source}" target="${target}" includeantruntime="on">
        	<compilerarg line="-encoding UTF-8" />
            <src path="src"/>
            <exclude name="**/.svn/**"/>
            <classpath refid="ap.classpath"/>
        </javac>
    	<jar jarfile="${project.publish.jar.file}" basedir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    	<delete dir="${project.publish.home.path}/${project.name}/WEB-INF/classes"/>
    	<delete dir="${project.source.home.path}"/>
    </target>
</project>


相關推薦

ant部署例子

ant檔案放到D:\java_workspace\ap\專案下執行 1.完成專案的編譯工作。並打包jar檔案。到打包到專案的jar目錄中名為ap.jar目錄 <?xml version="1.0" encoding="UTF-8" standalone="no"?&

例子弄懂JS 的setTimeout的運行方式

-a highlight margin java p s .com cti x11 on() function test() { var a = 1; setTimeout(function() {

回溯算法 ------回溯算法的例子

tro 回溯 size .cn 背包 例子 技術 小結 cnblogs 1.回溯算法的小結 2.回溯算法的幾個例子 2.1 ------ 4後問題 搜索空間: 2.2 ------01背包問題 01背包問題的算法設計 01背包問題的實

在Python使用yaml的例子

yaml config 配置文件 load python版本:2.7.5安裝方法:pip install PyYaml“把變量寫進yaml做配置文件,然後python腳本從yaml文件裏面取到變量”的方法最近是在python編程裏比較流行的配置項方法。yaml更加易讀,而且通過縮進表示結構,這

記錄小文件上傳的例子(含進度條效果,附源碼下載)

clas 運行 open ntb httppost 會有 text recent mappath 1、簡單原生上傳 無javascript腳本、無進度條; 借助iframe實現post提交後的無刷新效果; jquery插件ajaxFileUpload.js的實現原

動態規劃和例子

一.斐波那契佇列 遞迴解法: int fib(int N) { if (N >= 0) return 1; else return fib(N - 1 ) + fib(N - 2); } 若編譯器不進行優化,那麼遞迴解法效率很低,因

C程式碼中向量運算的例子

  最近遇到了一個C語言中使用向量運算的問題,栽了不少跟頭,這裡就做個總結,免得後面再犯類似錯誤.   該資料結構的定義如下所示: typedef int v4si __attribute__ ((vector_size (16)))   基本的操作: typedef int v4si

#程式設計師該等著加薪,還是不停跳槽漲工資?看例子你就知道了

一:重點:跳槽帶來的漲薪幅度高於正常晉升! 雲曾今說過,跳槽的原因不外乎兩種:錢沒給到位和心受委屈了。我這裡暫以錢沒給到位說說為什麼程式猿跳槽比較頻繁。 數字最能說明問題: 13年3月,進了一家有電信背景的公司,不到10人,實習期間1K元,8月轉正後3.2K。 15年3月,漲

例子理解對稱加密與非對稱加密、公鑰與私鑰、簽名與驗籤、數字證書、HTTPS加密方式

# 原創,轉載請留言聯絡 為什麼會出現這麼多加密啊,公鑰私鑰啊,簽名啊這些東西呢?說到底還是保證雙方通訊的安全性與完整性。例如小明發一封表白郵件給小紅,他總不希望給別人看見吧。而各種各樣的技術就是為了保障通訊的安全。(本文務必從上到下看) 1.對稱加密與非對稱加密 對稱加密: 對稱加密是

Linux/Unix下grep命令使用的例子 grep Examples

grep 語法grep 'word' filenamegrep 'string1 string2'  filenamecat otherfile | grep 'something'command | grep 'something'command option1 | grep 'data'grep --co

JavaScript閉包?看完這例子你就完全搞懂了!

理解閉包,首先要知道作用域鏈是個什麼東西。 1.什麼是作用域鏈 在 JavaScript 的最頂層程式碼中(也就是不包含在任何函式定義內的程式碼),作用域鏈有一個全域性物件組成。在不包含巢狀的函式體內,作用域鏈上有兩個物件,第一個是定義函式引數和區域性變數的物件,第二個是全域性物件。在一個巢

spark 入門map reduce 最好的例子

安裝 Scala IDE 搭建 Scala 語言開發環境很容易,Scala IDE 官網 下載合適的版本並解壓就可以完成安裝,本文使用的版本是 4.1.0。 安裝 Scala 語言包 如果下載的 Scala IDE 自帶的 Scala 語言包與 Spark 1.3

pytorch自動微分的例子

        昨天微信‘機器之心’釋出了開源軟體pytorch出場的重磅訊息。看內容感覺動態計算圖的思路比較新穎。在初步體驗其自動微分操作之後,發覺這個演算法包確實是將計算圖的符號佔位變數和實體變數的繫結操作合二為一了。這就比其它的演算法包來得更為簡潔明快,學習的曲線陡降了很多。

遞迴的例子

一,遞迴階乘 n! =n * (n - 1)....*1 #include<iostream> using namespace std; long a(int n) { if(n ==

DB2 儲存過程例子

CREATE PROCEDURE proc_with_variables (IN p_empno VARCHAR(6)) LANGUAGE SQL SPECIFIC proc_with_vars -- applies to LUW

關於區域性變數的指標,棧,和棧的釋放的例子

看幾個例子 一個是經典的1+2=65534: 程式碼如下 #include <stdio.h> #include <stdlib.h> unsigned short *Sum( unsigned char a,unsigned char b)

C語言中自我遞迴的例子

遞迴 遞迴就是一個函式在它的函式體內呼叫它自身。執行遞迴函式將反覆呼叫其自身,每呼叫一次就進入新的一層。 遞迴函式必須有結束條件。 遞迴分為回推和遞推兩個階段,當一直回推,直到遇到牆後返回,這個牆就是結束條件。 所以遞迴要有兩個要素,回推牆與遞推關係 例

總結了下PHPExcel官方讀取的例子

1.使用 PHPExcel_IOFactory 讀取檔案 $objPHPExcel = PHPExcel_IOFactory::load($inputFileName); 2.使用一個特定的讀取類,讀取檔案 $objReader = new PHPExcel_Rea

find命令的例子解析(-a,-o,-path,-wholename,-prune,-print)

一:find的基本模式和預設規則 find的基本模式是 find [path]  [express]    /*man find最上邊的命令格式 */ path可以省略,預設是當前目錄, express又區分為options(選項)+tests(條件)+actions(

面試常見查詢語句(能掌握這例子就可以了)

摘要: 表結構: student(s#,sname,sage,ssex)學生表 course(c#,cname,T#)課程表 sc(s#,c#,score)成績表 Teacher(T#,tname)教師表 1.查詢001課程比002課程成績高的所有學生的學號: