一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Maven-Ant-Task 使用手記

 KILLKISS 2012-10-30
Maven的依賴管理的確是個好東西。但在集成構建方面,Ant顯然更好。今天試用了一下maven-ant-task這個工具,感覺非常不錯。可以在ant中調用maven的依賴

首先需要定義maven-ant-task,以及maven的pom路徑
Xml代碼  收藏代碼
  1. <!--使用Maven2依賴管理 -->  
  2. <path id="maven-ant-tasks.classpath"  
  3.     path="lib/maven-ant-tasks-2.0.8.jar" />  
  4. <typedef resource="org/apache/maven/artifact/ant/antlib.xml"  
  5.     uri="urn:maven-artifact-ant"  
  6.     classpathref="maven-ant-tasks.classpath" />  
  7.   
  8. <!--定義Maven2變量-->  
  9. <artifact:pom id="maven.project" file="pom.xml" />  
  10. <artifact:dependencies pathId="maven.classpath"  
  11.     filesetid="maven.fileset">  
  12.     <pom refid="maven.project" />  
  13. </artifact:dependencies>  


在編譯時使用之前定義好的classpath
Xml代碼  收藏代碼
  1. <javac srcdir="${src}" destdir="${build.classes}"  
  2.     classpathref="maven.classpath" />  



一個完整的build.xml
Xml代碼  收藏代碼
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <project name="elitemark-commons" default="build"  
  3.     xmlns:artifact="urn:maven-artifact-ant">  
  4.     <description>Elitemark lightweight commons API</description>  
  5.   
  6.     <property file="build.properties" />  
  7.   
  8.     <target name="clean"  
  9.         description="Cleans up the build artifacts and temporary directories">  
  10.         <delete dir="${dist}" />  
  11.         <delete dir="${build.classes}" />  
  12.         <delete dir="${build.test}" />  
  13.         <delete dir="${build.javadoc}" />  
  14.     </target>  
  15.   
  16.     <target name="init">  
  17.         <!--使用Maven2依賴管理 -->  
  18.         <path id="maven-ant-tasks.classpath"  
  19.             path="lib/maven-ant-tasks-2.0.8.jar" />  
  20.         <typedef resource="org/apache/maven/artifact/ant/antlib.xml"  
  21.             uri="urn:maven-artifact-ant"  
  22.             classpathref="maven-ant-tasks.classpath" />  
  23.   
  24.         <!--定義Maven2變量-->  
  25.         <artifact:pom id="maven.project" file="pom.xml" />  
  26.         <artifact:dependencies pathId="maven.classpath"  
  27.             filesetid="maven.fileset">  
  28.             <pom refid="maven.project" />  
  29.         </artifact:dependencies>  
  30.     </target>  
  31.   
  32.     <target name="compile" depends="init">  
  33.         <mkdir dir="${build.classes}" />  
  34.         <javac srcdir="${src}" destdir="${build.classes}"  
  35.             classpathref="maven.classpath" />  
  36.         <copy todir="${build.classes}" includeEmptyDirs="no">  
  37.             <fileset dir="${res}">  
  38.                 <include name="**/*" />  
  39.             </fileset>  
  40.         </copy>  
  41.     </target>  
  42.   
  43.     <target name="jar-all">  
  44.         <mkdir dir="${dist}" />  
  45.         <delete file="${dist}/${artifactId}-${version}.jar"  
  46.             failonerror="false" />  
  47.         <jar destfile="${dist}/${artifactId}-${version}.jar"  
  48.             basedir="${build.classes}" encoding="UTF-8">  
  49.             <manifest>  
  50.                 <attribute name="Implementation-Title"  
  51.                     value="${app.name}" />  
  52.                 <attribute name="Implementation-Version"  
  53.                     value="${versionNumber}" />  
  54.                 <attribute name="Implementation-Vendor"  
  55.                     value="${vendor}" />  
  56.             </manifest>  
  57.         </jar>  
  58.     </target>  
  59.   
  60.     <target name="javadoc" depends="init">  
  61.         <mkdir dir="${build.javadoc}" />  
  62.         <javadoc packagenames="org.elitemark.commons.*"  
  63.             sourcepath="${src}" defaultexcludes="yes" destdir="${build.javadoc}"  
  64.             author="true" version="true" use="true" windowtitle="${app.name}"  
  65.             classpathref="maven.classpath" encoding="UTF-8" docencoding="UTF-8"  
  66.             header="&lt;meta http-equiv='Content-Type' content='text/html;charset=UTF-8' /&gt;">  
  67.             <doctitle>  
  68.                 <![CDATA[<h1>Elitemark lightweight commons API</h1>]]>  
  69.             </doctitle>  
  70.             <bottom>  
  71.                 <![CDATA[<i>Copyright &#169; 2007-2008 www. All Rights Reserved.</i>]]>  
  72.             </bottom>  
  73.             <link href="http://www./javadoc/" />  
  74.         </javadoc>  
  75.     </target>  
  76.   
  77.     <target name="build" depends="clean,compile">  
  78.         <antcall target="jar-all"></antcall>  
  79.     </target>  
  80.   
  81. </project>  

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    中文字幕人妻av不卡| 殴美女美女大码性淫生活在线播放 | 国内外激情免费在线视频| 91偷拍与自偷拍精品| 午夜精品一区免费视频| 亚洲国产精品久久综合网| 亚洲一区二区精品免费| 亚洲中文字幕高清乱码毛片| 国产女同精品一区二区| 中文字幕日韩欧美一区| 欧美中文字幕一区在线| 日本福利写真在线观看| 亚洲精品深夜福利视频| 久草精品视频精品视频精品| 黄色片一区二区三区高清| 亚洲欧美日韩在线中文字幕| 一区中文字幕人妻少妇 | 国产麻豆成人精品区在线观看| 中文字幕精品少妇人妻| 亚洲熟女诱惑一区二区| 真实国产乱子伦对白视频不卡| 国产av大片一区二区三区| 日本一本不卡免费视频 | 久久精品中文扫妇内射| 国产中文字幕一二三区| 嫩草国产福利视频一区二区| 国产精品久久久久久久久久久痴汉| 韩国日本欧美国产三级| 国语对白刺激高潮在线视频| 91精品国产品国语在线不卡| 超薄丝袜足一区二区三区| 丁香七月啪啪激情综合| 欧美大黄片在线免费观看| 老司机精品视频免费入口| 国产传媒高清视频在线| 中文字字幕在线中文乱码二区| 一区二区三区国产日韩| 国内精品偷拍视频久久| 国产精品不卡免费视频| 激情五月激情婷婷丁香| 色综合久久六月婷婷中文字幕 |