Maven筆記(四)– eclipse+tomcat構建web工程

RockCMS內容管理系統是一個web應用,因此我們要利用Maven構建一個web應用,開發環境爲eclipse+tomcat。構建過程如下:

1、工具準備

eclipse:版本爲eclipse 4.2(Juno Service),maven插件的安裝與配置參見“m2eclipse安裝與配置”

tomcat:版本爲apache-tomcat-6.0.37(即tomcat6.x系列,本文安裝在D:\work\tomcat6\apache-tomcat-6.0.37-maven)

2、建立web應用

我們使用eclipse建立maven的web工程,步驟如下:

在eclispe中,點擊【File】-【New】-【Other】,彈出如下界面:

選擇“Maven”-“Manve Project”,點擊【Next】

2013-10-12 10-14-13

設置工作空間,可以根據項目實際情況進行設置,這裏我們選擇eclipse默認的工作空間“Use default Workspace location”,點擊【Next】

2013-10-12 10-16-01

利用archetype創建web工程,選擇groupId爲“org.apache.maven.archetypes”,ArtifactId爲“maven-archetype-webapp”,version爲“RELEASE”的archetype構建,點擊【Next】

2013-10-12 10-21-24

填寫構件基本座標信息,如下:

Group Id:com.rockcms                 //項目分組id,rockcms的域名(倒序書寫)

Artifact Id:rockcms-web                //rockcms項目組內構建唯一id,rockcms-web

version:1.0.0-SNAPSHOT               //rockcms項目版本號,當前爲快照1.0.0版本

Package:com.rockcms.framework.web    //rockcms項目的java源碼包路徑,根據需要命名

點擊【Finish】,在ecliplse導航欄中顯示出我們建立的rockcms-web項目。

2013-10-12 10-31-36

3.配置web工程

建立好web工程框架後,我們需要簡單的完善一下它,使其成爲一個結構完善的maven的web工程。

1)完善目錄

讓目錄變成標準的maven結構,增加Maven項目必要的主目錄(src/main/java)和測試目錄(src/test/java)。

右鍵rockcms_web工程,點擊【properties】,如下圖

2013-10-12 11-04-05

刪除報錯的source folder,選擇錯誤的folder,點擊【remove】

2013-10-12 11-07-15

a)添加主目錄

點擊【Add Folder】

2013-10-12 11-07-50

選擇”main”,點擊【Create New Folder】,輸入Folder name爲“java”。點擊【finish】,完成主目錄的建立。

2013-10-12 11-11-32

在src目錄下建立test/java目錄,選擇”src”,點擊【Create New Folder】,輸入Folder name爲“test/java”。點擊【finish】,完成測試目錄的建立。

2013-10-12 11-12-32

2)配置class輸出路徑

和標準web工程一樣,我們將主程序編譯到WEB-INF\classes目錄下,測試程序不需要打包,所以將測試程序的編譯還是編譯到target目錄下。具體設置如下:

爲了方便起見,我們將編譯的缺省目錄設置爲WEB-INF\classe,點擊“default output folder”後的【Browser】,注意由於WEB-INF路徑在src源碼目錄下,所以“Allow output folders for source folders”必須勾選.

2013-10-12 11-21-35

沒有classes目錄,可通過【Create New Folder】在WEB-INF目錄下建立classes目錄,點擊【OK】完成配置,如下圖所示:2013-10-12 11-23-58

缺省目錄設置完畢後,我們分別爲sourcefolder選擇編譯位置,設置src/main/java的編譯輸出

2013-10-12 11-27-30

選擇src/main/java的編譯輸出,點擊【Edit】

2013-10-12 11-30-12

選擇工程默認的輸出路徑(Project’s default output folder),點擊【OK】

同理,將src/main/resources的輸出路徑也設置缺省路徑Project’s default output folder,結果如下圖所示:

2013-10-12 11-31-32

由於test不需要打包到工程中,所以我們將test輸出到target目錄中,設置src/test/java的編譯輸出路徑

2013-10-12 11-34-08

爲test選擇指定的輸出路徑“test-classes”,點擊“OK”完成test輸出路路徑設置。

此步驟很重要,會影響到發佈的war包中內容,如果不將main目錄下的編譯路徑設置到WEB-INF/classes下,則war中將沒有編譯後的classes,此例子將無法在tomcat下發布運行,當然,後續如果將此工程的所有類和資源打成jar,加入到此工程的依賴中,則不會有問題。

3)配置jdk版本

由於本項目採用的是jdk1.6,需要將JRE System Library設置jdk1.6

2013-10-12 11-45-46

4)調整源碼目錄結構順序

爲了更好的展現源碼結構,可以調整一下源碼在eclipse的顯示順序,將src/main/java移動到最上邊

2013-10-12 11-50-09

設置完成後點擊【OK】,關閉屬性界面。

經過以上四步設置完畢後,maven的rockcms-web工程搭建完畢。

2013-10-12 11-57-07

4、helloworld代碼

我們將index.jsp的內容進行一下修改,以便標明顯示,如下:

2013-10-12 12-03-41

5、使用tomcat運行web工程

1)eclipse配置tomcat

在eclipse中配置tomcat,這樣maven才能利用配置的tomcat啓動web工程。配置方式:

點擊【Windows】-【Preferences】,顯示下圖中的窗口

2013-10-12 14-16-21

選擇Tomcat進行配置,版本Version6.x,選擇apache-tomcat-6.0.37所在位置,

如:D:\work\tomcat6\apache-tomcat-6.0.37-maven

保存配置,完成eclipse和tomcat的配置。

2)簡化maven的tomcat運行命令

爲了簡化maven的tomcat運行命令(如:tomcat6:run),我們需要在maven的setting.xml文件中配置一個server,內容如下:

1
2
3
4
5
<server>
    <id>tomcat6</id>
    <username>admin</username>
    <password>admin</password>
</server>

server的id爲“tomcat6”,作爲命令行的key,由於server配置要求我們指定鏈接遠程服用的帳號和密碼,所以我們這裏配置的是tomcat的用戶名和密碼(例如:admin)。

接下來我們爲tomcat配置訪問所需的用戶名和密碼,編輯tomcat-users.xml配置文件(本文默認tomcat已經安裝完畢,安裝路徑爲D:\work\tomcat6\apache-tomcat-6.0.37-maven。tomcat-users.xml文件位於tomcat安裝目錄的”\conf”目錄下),增加manager角色的用戶admin,配置方式如下:

<user username=”admin” password=”admin” roles=”manager”/>

注:此處的username和password與maven的settings中server用戶名和密碼一致。

啓動tomcat(D:\work\tomcat6\apache-tomcat-6.0.37-maven\bin\startup.bat,這裏tomcat配置的端口號爲8080),訪問“http://127.0.0.1:8081/manager/html”地址,如下圖

2013-10-12 15-11-21

輸入用戶名和密碼,查看此用戶是否能夠正常訪問,顯示如下界面說明登錄成功

2013-10-12 15-12-41

3)爲web工程添加tomcat插件

爲了能夠讓工程在tomcat容器中運行,我們需要在pom.xml中build工程所需要的tomcat插件,在這裏我們使用org.apache.tomcat.maven:tomcat6-maven-plugin:2.1:RELEASE實現web工程的運行。tomcat6-maven-plugin在pom.xml配置如下:

下面詳細說明tomcat插件的配置項:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<build>
  <finalName>rockcms-web</finalName>
  <plugins>
      <plugin>
      <groupId>org.apache.tomcat.maven</groupId>
      <artifactId>tomcat6-maven-plugin</artifactId>
      <version>2.1</version>
      <configuration>
          <url>http://127.0.0.1:8081/manager</url>
          <server>tomcat6</server>
          <port>8081</port>
          <path>/rockcms</path>
          <charset>utf-8</charset>
      </configuration>
      </plugin>
  </plugins>
</build>

詳細說明一下tomcat插件的configuration配置,如下:

url:tomcat管理應用的訪問路徑,用來進行tomcat鏈接

server:用於獲得maven在setting配置的遠程訪問的權限信息,如用戶名和密碼等,“tomcat6”和前面在settings.xml中配置的serverId一致。

port:端口號,8081

path:rockcms-web項目的webpath路徑

charset:字符集,utf-8

4)啓動tomcat運行web項目

在eclipse中利用maven命令啓動tomcat,運行web工程,配置方法如下:

點擊【Run】-【Debug Configurations..】,如下圖:

2013-10-12 15-28-04

2013-10-12 15-29-30

在”Maven Build”處添加一個調試命令,具體如下:

name:調試命令名,可以是項目名或其他

Base direcory:運行的項目位置,可以通過【Browser Workspace..】,選擇當前工作空間裏的項目,這裏爲rockcms-web項目。

Goals:執行的命令,tomcat6:run,這裏是簡化後的命令名,這也是爲什麼要配置server的原因。

點擊【Debug】按鈕,Eclipse的console窗口中會顯示啓動信息。

2013-10-12 15-37-07

第一次啓動時,maven會下載tomcat插件,可能需要等待一會兒,後續再啓動則不會在下載了,會比較快。啓動成功後,訪問“http://127.0.0.1:8081/rockcms/”,則會顯示我們修改的helloworld界面。

2013-10-12 16-54-57

以上內容爲在eclipse裏建立maven的web工程,並且實現了在eclipse中利用tomcat運行web工程,配置起來步驟比較多,但是環境一旦搭建完成,後續構建、發佈等工作量就會大大減少。

對於開發人員來說,我們已經有一個標準的開發環境了eclipse+tomcat+web,接下來就是編寫程序並進行調試了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章