使用MAVEN進行工程自動化構建(2)

3 簡單的java應用程序和java web程序的例子
首先輸入命令
mvn archetype:create -DgroupId=cn.com.capinfo -DartifactId=my-app
生成的項目佈局如下:
my-app
----src
     ----main
         ----java
----cn
        ----com
         ----capinfo
     ----test
         ----java
----cn
      
----com
           ----capinfo
還會在my-app目錄下創建了一個pom.xml文件(需要注意一點:執行命令必須在pom.xml文件同級的目錄下進行)
下面對pom.xml的各各結點進行一下說明:
poject 這是pom.xml的頂級元素。
modelVersion 這是元素指出了這個POM使用的是那個版本的對象模型。這個模型的版本自身麼是經常改變的,但這種改變是爲了使模型更加的穩定。
groupId這個元素指出創建這個工程的組織或團隊的唯一標識,並且這個也是一個項目的關鍵標識,推薦使用這個組織或團隊的完整域名。
artifactId 這個元素指出這個工程的基本名稱。
packaging 打包的類型(例如:JAR,WAR,EAR等等)默認爲jar
version項目的版本號(打包時會將它加入)
name 這個元素指出這個工程顯示的名稱。
url指出在哪裏能發現工程的站點。
desription 這個元素提供了這個工程基本的描述。這個也常用於Maven產生的文檔中。
dependencies 定義依賴(項目中需要依賴的包)
以上是maven的一些基本項,完整的請參考http://maven.apache.org/maven-model/maven.html
還需要注意在定義依賴的時候存在着幾種對依賴的管理如下:
  • compile,缺省值,適用於所有階段,會隨着項目一起發佈。
  • runtime,只在運行時使用,如JDBC驅動,適用運行和測試階段。
  • test,只在測試時使用,用於編譯和運行測試代碼。不會隨項目發佈。
  • system,需要顯式提供包含依賴的jarMaven不會在Repository中查找它。
maven下載這些包是通過在http://www.ibiblio.org/maven2/網站上下載的
mvn archetype:create -DgroupId=cn.com.capinfo -DartifactId=demo
     -DarchetypeArtifactId=maven-archetype-webapp
生成的結果結構如下所示:
demo
----src
     ----main
         ----resources
         ----webapp
             ----WEB-INF
與java應用程序相比pom.xml需要修改的地方是
<packaging>war</packaging>
如果想改變生成後war文件的名字可以加入以下代碼
<build>
     <finalName>capinfo demo</finalName>
</build>
填加依賴的時候是比較麻煩的,因爲groupIdartifactIdversion是必填項,有時候不知道用哪個版本,有一個小的竅門:
首先進入google然後輸入你要找的文件如:site:www.ibiblio.org maven2 struts 進入相應的頁中打開maven-metadata.xml文件就可以得到所需要的信息了。
需要注意一點,如果想將.jar文件加載到WEB-INF/lib文件夾下需要將<scope>compile</scope>這樣就可以將.jar文件填加進去了。
創建Maven項目:mvn archetype:create
編譯源代碼:mvn compile
編譯測試代碼:mvn test-compile
運行測試:mvn test
產生sitemvn site
打包:mvn package
在本地Repository中安裝jarmvn install
清除產生的項目:mvn clean
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章