首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Ant Build.xml 實戰範例:Java 專案編譯、打包與部署自動化

     編輯:Java 相關知識

標準專案建置腳本

<?xml version="1.0" encoding="utf-8"?>
<project name="tdlphase4" default="dist" basedir=".">
  <!-- 屬性定義 -->
  <property name="src" value="E:\tdl-phase4\Workspace\TotalJavaSource-JbuilderPJ"/>
  <property name="build" value="build"/>
  <property name="dist" value="C:\Software\weblogic\myserver\servletclasses"/>
  <property environment="env"/>
  <property name="Name" value="tdlphase4"/>

  <!-- 編譯類別路徑 -->
  <path id="java_classpath">
    <pathelement path="${env.classpath}"/>
    <fileset dir="C:\Software\weblogic\myserver\servletclasses">
      <include name="**/*.jar"/>
    </fileset>
  </path>

  <!-- 目標定義 -->
  <target name="init">
    <tstamp/> <!-- 生成 DSTAMP/TSTAMP -->
  </target>

  <target name="compile" depends="init">
    <javac srcdir="${src}" destdir="${build}" deprecation="yes">
      <classpath refid="java_classpath"/>
    </javac>
  </target>

  <target name="dist" depends="compile">
    <jar jarfile="${dist}/${Name}-${DSTAMP}.jar" basedir="${build}"/>
  </target>
</project>

關鍵元素解析

元素用途
<property>定義可重用變數,支援環境變數 environment="env"
<path>定義類別路徑、來源路徑等路徑結構
<target>建置任務單元,depends 定義依賴順序
<tstamp>生成時間戳屬性:DSTAMP(yyyyMMdd)、TSTAMP(hhmm)、TODAY
<javac>編譯 Java 原始碼,deprecation="yes" 顯示棄用警告
<jar>打包 JAR,basedir 指定輸入目錄

進階擴展建議

  1. 單元測試整合:加入 <junit> 任務,產生 XML/HTML 報告
  2. 程式碼品質:整合 Checkstyle、PMD、FindBugs
  3. 部署自動化:<copy> 至遠端伺服器、<ssh> 執行重啟腳本
  4. 版本管理:從 SVN/Git 检出、標籤打標
  5. 多環境配置:build-dev.xml、build-prod.xml 覆蓋屬性

最佳實踐

  • 使用相對路徑,避免硬編碼絕對路徑
  • 將共用屬性提取至 build.properties
  • 定義 clean 目標刪除 build/、dist/
  • 使用 <mkdir> 確保輸出目錄存在
  • 啟用 fork="true" 隔離編譯 JVM
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved