maven(一)初步搭建,項目結構

1、環境準備html

java環境, jdk 1.5 以上java

MyEclipse集成工具,我裝的是8.5 版本apache

2、快速安裝及配置api

一、下載maven: http://maven.apache.org/docs/3.1.1/release-notes.htmleclipse

下載apache-maven-3.*.*-bin.zipmaven

解壓後, 配置環境變量%MAVEN_HOME%\bin 便可完成安裝,(MAVEN_HOME爲解壓包位置)工具

測試maven3是否已經安裝,在dos上運行mvn -version,出現以下相似結果表示安裝完成單元測試

二、修改倉庫位置測試

2.1 win7系統默認的倉庫路徑是:C:\Users\用戶名\.m2\repository 修改成:D:\Program Files\Maven\Repositoriesspa

2.2 修改\apache-maven-3.1.0\conf 下的setting.xml文件, 找到<localRepository>D:\Program Files\Maven\Repositories</localRepository>這一行,進行修改

2.3 打開命令提示符, 輸入:mvn help:system, 該命令會打印出全部的java系統屬性和環境變量 

 

三、修改myeclipse內嵌maven爲本身安裝的版本

打開myEclipse,點擊Window->Preferences

3、建立maven項目例子

一、新建項目, 點擊File->Other 選擇Java Maven Project

                                    圖1:new Maven Project

                                 圖2:ProjectName\ Group Id\Artifact Id

 

二、新建項目後, maven項目結構以下圖

 說明:

1)pom.xml在項目的根目錄下,打開pom.xml

2)pom.xml中, groupId artifactId和version,這3個元素定義了項目基本的座標,

      通常groupId跟建立的包關聯(名稱相同),如圖所示; artifactId定義了當前Maven項目在組中惟一的ID

3)pom.xml自動添加了依賴<dependency>,有了這個聲明, Maven可以自動下載相應版本的junit.jar包,

    如圖,已經下載到了本地倉庫C:\Users\${用戶名}\.m2\repository\junit\junit\versionxx,打開該路徑,能夠看到junit-version.pom 和junit-version.jar

4)<dependency>添加依賴中,元素<scope>定義依賴範圍,當爲test時候, 表示: import JUnit只能測試類中, 在主代碼中引入, 會編譯錯誤。

    不聲明依賴範圍,默認值是compile,表示該依賴對主代碼和測試代碼都有效。

 

三、編寫主代碼(src/main/java下)並編譯

好比,在com.jennifer.test下建HelloMaven.java

代碼以下:

使用Maven進行編譯, 在項目根目錄下運行命令: mvn clean compile

說明:

1)clean,告訴Maven清理輸出目錄 target/

2)compile告訴Maven編譯項目主代碼,編譯後,在..\maventest2\target\classes的 \com\jennifer\test下生成了HelloMaven.class 文件

 

四、編寫測試代碼(src/test/java下)

如上2(3)所述, 已經添加了junit依賴,(默認建立項目後依賴的junit版本較低,改爲4.8.1,此時,依賴的關聯包會自動更新),

下面用junit編寫測試類

編寫完畢後, 調用Maven執行測試,運行 mvn clean test

說明:

1)執行成功後, 在..\maventest2\target\test-classes的 \com\jennifer\test下生成了HelloMavenTest.class 文件

    而且, target下面生成 surefire-reports,顯示運行結果報告

2)若構建執行compiler:testCompile任務的時候失敗了,Maven輸出提示須要使用 -source5或更高版本以啓動註釋

修改配置文件, 使maven-compiler-plugin支持java5,以下:

 五、打包

執行打包命令:mvn clean package

說明:

1)執行打包命令,jar插件的jar目標將項目主代碼打包成一個名爲hello-0.0.1-SNAPSHOT.jar,該文件位於target/  輸出目錄中

     默認命令規則:artifact-version.jar

2)將該 .jar文件拷貝下來, 導入到其餘項目中, 就能夠調用裏面的類和提供的方法

3)直接在其餘Maven引用的話, 執行安裝步驟:mvn clean install, 就會安裝到本地倉庫中, 一樣在repository倉庫文件夾裏,生成該項目的.pom .jar文件(相似前面下載的junit)

 六、運行

 前面默認打包生成的jar不可以直接運行, 由於帶有main方法的類信息不回添加到mainfest中,須要再配置插件

再從新執行 mvn clean install

回再生成一份新的帶有Main-Class信息的.jar文件,前面生成的被重命名爲original-hello-0.0.1-SNAPSHOT.jar

在項目根目錄中執行該jar文件

4、maven與其餘經常使用插件結合使用

上述中, 就有提到maven裏面配置junit插件, 用來完成單元測試, 實際上,maven項目很容易跟其餘插件結合起來使用

好比javadoc, 代碼覆蓋測量工具Cobertura等

一、javadoc配置以下:

配置javadoc後, 執行 mvn javadoc:javadoc 命令, 就會在..\target\site\apidocs目錄下生成 apidocs信息

二、Cobertura配置以下:

 

配置Cobertura後, 執行 mvn cobertura:cobertura 命令, 就會在..\target\site\cobertura目錄下,生成測試代碼覆蓋主代碼狀況信息。

相關文章
相關標籤/搜索