標籤:
在java編譯那些事通過提到ant編譯Java工程,如今擴大到用它來構建Android目,事實上道理是相通的。變化的僅僅是使用的形式。ant構建相比IDE的優點是多個子項目使用自己定義jar包時,ant能夠更好的完畢自己主動化構建。一個命令就搞定整個項目的編譯而不用手工的匯出jar包然後再將其放到指定檔案夾。
這就是高效的構建工具所標榜的。
先來說說ant在Linux下的安裝(那篇文章寫的太過簡單,事實上也是非常easy的,別看mannul中寫的那麼複雜)。
1.ant的安裝最簡單的辦法就是直接用Linux系統命令安裝:
Ubuntu:
sudo apt-get install ant
Fedora:
sudo yum install ant
缺點是軟體server上的版本號碼太過老舊。我在Fedora 14(這系統版本號碼就夠老的了)安裝版本號碼是1.7.1,而最新版本號碼是1.9.4,所以還是推薦直接從官網下載最新的版本號碼安裝。假設想看原始碼就選擇Source Edition。而我選擇了Binary Edition。就像是免安裝版軟體一下,過程例如以下:
1)下載。zip或其它格式安裝包,解壓到你想放置的路徑:
[[email protected] ant]$ cp ~/Downloads/apache-ant-1.9.4-bin.zip .[[email protected] ant]$ unzip apache-ant-1.9.4-bin.zip [[email protected] ant]$ cd apache-ant-1.9.4[[email protected] apache-ant-1.9.4]$ lsbin fetch.xml INSTALL lib manual READMEetc get-m2.xml KEYS LICENSE NOTICE WHATSNEW
2)環境變數設定在.bashrc中加入例如以下內容:
15 export ANT_HOME=/home/linc/dev/ant/apache-ant-1.9.4 16 export JAVA_HOME=/usr/java/jdk1.6.0_25 17 export PATH=${PATH}:${ANT_HOME}/bin為了讓改動馬上生效。運行一下 source ~/.bashrc
3)檢查是否成功運行ant,如列印以下的資訊,說明ant起作用了。
[[email protected] apache-ant-1.9.4]$ antBuildfile: build.xml does not exist!Build failed
2.build.xmlant的編譯是基於build.xml設定檔的,而Android SDK已經為我們提供了一個模板,詳見<sdk>/tools/ant/build.xml
,更為美妙的是我們能夠用android工具來產生build.xml。
android工具是<sdk>/tools下的工具。從名稱能夠看出它的能力是非常強的。這個工具以後會單獨找個機會說,先來簡介一下它是怎樣幫忙建立build.xml檔案的,我們首先看一下協助:
[[email protected] BallGame]$ android -h update project Usage: android [global options] update project [action options] Global options: -h --help : Help on a specific command. -v --verbose : Verbose mode, shows errors, warnings and all messages. --clear-cache: Clear the SDK Manager repository manifest cache. -s --silent : Silent mode, shows errors only. Action "update project": Updates an Android project (must already have an AndroidManifest.xml).Options: -l --library : Directory of an Android library to add, relative to this project‘s directory. -p --path : The project‘s directory. [required] -n --name : Project name. -t --target : Target ID to set for the project. -s --subprojects: Also updates any projects in sub-folders, such as test projects.
除了參數-p路徑是必須的,其它參數都能夠不帶。
可是建議名稱-n要加上。否則會預設以Activity名稱來命名。-t能夠不做改動,項目的Target Id事實上就是指Android API的版本號碼,我們能夠查看項目的project.properties,以此為基準。例如以下:
[[email protected] BallGame]$ tail project.properties ...# Project target.target=android-4
進入原有項目BallGame檔案夾。輸入命令例如以下:
[[email protected] BallGame]$ android update project -p .Updated local.propertiesNo project name specified, using Activity name ‘MainActivity‘.If you wish to change it, edit the first line of build.xml.Added file ./build.xmlAdded file ./proguard-project.txt
也能夠指定更全的參數:
[[email protected] BallGame]$ android update project -p . -n BallGame -t android-4Updated project.propertiesUpdated local.propertiesUpdated file ./build.xmlUpdated file ./proguard-project.txt
至此。build.xml在我們不動一槍的情況下搞定了。
3.編譯運行ant debug。一個debug的apk就編譯出來了。
本文以一個最簡單的Android項目為例,講狀態ant安裝與使用。
接下來說說複雜的項目ant建。
著作權聲明:本文部落格原創文章。部落格,未經同意,不得轉載。
Android高效的應用程式開發工具集1---ant構建一個簡單的Android工程