1. 程式人生 > >IntelliJ IDEA 14.1上JFinal開發環境搭建手冊

IntelliJ IDEA 14.1上JFinal開發環境搭建手冊

轉載: http://my.oschina.net/chixn/blog/471755

實測成功

JFinal官方的教程都是使用Eclipse進行開發的,而使用Intellij IDEA來做開發,不少地方和Eclipse區別還是很大的。

本文參考了網上不少文章,主要沿用了網友的內容,一步一步做了嘗試後記錄下來,感謝萬能的網際網路。

分別做了兩個Module,分別使用Jetty和tomcat來執行。均測試均可正常跑起來。

本文看起來雖然很長,但實際上步驟不多,為便於初學者瞭解Intellij IDEA,所以細節寫的非常完善,每一步都有截圖。

本文使用的開發環境是Intellij IDEA 14.1.4版本。JFinal是2.0版。

請大家注意:不是Intellij IDEA配置繁瑣,而是我為了便於入門初學者少走彎路,寫得非常細,凡是每一個出現的介面,我都截了圖,而且文章裡面包含了jetty和tomcat的兩個專案。所以看起來比Eclipse好像複雜,其實不是的。簡單地說,就五個步驟:建專案(類比於Eclipse的Workspace),建模組(類比於Eclipse的Project),引入Jar包,建Artifacts,寫程式碼。就可以運行了。

一、新建專案

新建一個專案,可以是空專案,也可以是連模組一起建的專案,本文為了演示Jetty和tomcat均能執行的效果,所以先建一個空專案,再分別建兩個不同的module,以便區分。

wpsF73C.tmp

如果專案和模組一起建,可以把Web Application選上,其他的預設就行。

wpsF76C.tmp

因為我們要分別測試jetty和tomcat的效果,要建兩個模組,所以先建一個空專案。

wpsF77D.tmp

點選“Next”進入下一步。

wpsF79D.tmp

輸入專案名稱和專案所在目錄,點選“Finish”即可。

二、專案引數配置

1.新建Module

如果新建一個空專案,會立即出來一個Project Structure的配置視窗。如果是連模組一起建的,請從【File】-【Project Structure】中選擇,對專案引數進行配置。

首先指定專案所使用的JDK版本:


如果要單獨為每個模組指定JDK版本,也可以在模組中進行配置(要在下面的新建模組步驟之後才能操作)。

下面開始新建模組。

wpsF7BD.tmp

選擇Modules,準備新建Module。

wpsF7CE.tmp

2.建Jetty執行模組

(1)新建模組

我們先新建一個module,用於使用jetty來執行。

wpsF7DE.tmp

選上“Web Application”後,點選Next。

在出現的視窗中,直接在Module name中輸入想要新建的module名字,下面的Content root和Module file location中會自動把路徑填進去。

為了便於區分,我們把jetty執行的module命名為jf_jt。

點選“Finish”。

wpsF81E.tmp

此時會出現如下介面;

選擇“Paths”選項卡,選中“Use module compile output path”後,在“Output path”和“Test output path”中均寫上類輸出的路徑。按照一般常規寫法,我把這個目錄放在module下,web\WEB-INF路徑下的classes目錄下。

wpsF83E.tmp

點選“Apply”,把配置啟用起來;

(2)匯入類庫

然後點選左側的Libraries選項卡;

wpsF8AC.tmp

在做這一步之前,我們先要把需要的類庫分別拷貝到我們建立的類庫目錄中。

這個模組是需要jetty來執行的,所以需要JFinal的類庫和jetty的類庫,事先準備好這幾個類庫。

Jfinal-2.0-all目錄下有需要的類庫檔案。

wpsF8DC.tmp

“jfinal-2.0-bin.jar”或“jfinal-2.0-bin-with-src.jar”是jfinal本身的jar包,任選一個都可以,為了方便除錯,可以選擇“jfinal-2.0-bin-with-src.jar”。

目前這個專案是為了Jetty而建的,所以要把“jetty-server-8.1.8.jar”也要包含進去。

     在電腦中找到專案目錄,進入到Module路徑中,新建資料夾;

wpsF90C.tmp

新建一個classes目錄(上文新建module時設定的輸出目錄)和lib目錄;

wpsF91C.tmp

把“jfinal-2.0-bin.jar”和“jetty-server-8.1.8.jar”兩個檔案拷貝到剛才新建的lib目錄下(注意,使用jfinal-2.0-bin.jar和使用jfinal-2.0-bin-src.jar,後續介面會略有不同,但差異不大)。

wpsF92D.tmp

回到Intellij IDEA配置介面。

選擇左側的Libraries選項卡,點選中間的“+”號,新增java類庫。

wpsF93D.tmp

在彈出的視窗中,找到lib目錄並選中剛才拷進去的“jfinal-2.0-bin-with-src.jar”包。

wpsF94E.tmp

點選“OK”。

此時會讓你選擇這些類庫將用於哪些module(如果你在專案中有多個module,在此均會列出來)在這裡,我們選擇這些類庫用於“jf_jt”module。

此時類庫就會出現在列表裡。

wpsF96E.tmp

點選“Apply”,儲存配置。

再重複上述步驟,匯入jetty的jar包。匯入後如下圖所示:

wpsF97F.tmp

再選擇左側的“Artifacts”選項卡,此時會出現空白的Artifacts介面。

wpsF99F.tmp

或出現已經有一個“jf_ft.war exploded”的介面(如果關閉後重新開啟Project Structure介面就會出現)。建議:最好在匯入類庫後,點選“OK”,關閉本介面後,重新通過【File】-【Project Structure】選單開啟本介面後,選“Artifacts”選項卡進行操作,避免重複建立jf-ft.war exploded。

重新開啟介面,並選擇Artifacts選項卡後,介面會如下圖所示:

wpsF9B0.tmp

此時視窗下部會出現一條告警資訊。如上圖紅框部分。

此時點選“Fix…”按鍵,選擇“Add‘jfinal-2.0-bin-with-src’to the artifact”,即可。

wpsF9C0.tmp

設定好的介面如下圖所示(把Build on make選上);

點選“Apply”按鈕儲存設定;

wpsF9D1.tmp

再點選“+”號,新增一個“Web Application:Archive”,此時選“For ‘jfjt:war exploded’”;

wpsF9E1.tmp

建好後,介面如下圖所示(如果還有告警提示,按照上面步驟,點選“Fix”按鍵把類庫新增進Artifact中);

選中“Build on make”選項後,點“OK”按鍵儲存並退出配置介面。

wpsF9F2.tmp

至此Jetty執行的模組已經建好。

3.建Tomcat執行模組

(1)新建模組

點選【File】-【New】-【Module】:

wpsFA03.tmp

選上“Web Application”,並點“Next”:

wpsFA23.tmp

填上Module的名稱,這裡起名為jf-tc,然後點選“Finish”:

wpsFA33.tmp

此時的介面是這樣:

wpsFA44.tmp

(2)匯入類庫

現在可以直接在IDEA的介面建目錄classes和lib。

滑鼠右鍵點選[jf-tc]-[web]-[WEB-INF]目錄,在出來的選單裡點選【New】-【Directory】。

wpsFA55.tmp

輸入classes和lib目錄的名稱:

wpsFA65.tmp

建好目錄後的模組如下所示:

wpsFA66.tmp

點選【File】-【Project Structure】進入專案,步驟和上一個模組建立的時候一樣,此時介面裡已經有兩個模組,選中jf-tc模組後,設定Path:

wpsFA77.tmp

接下來再設定Libraries,在此之前,需要把jfinal-2.0-bin-with-src.jar拷貝到lib目錄下。

wpsFA78.tmp

在“Libraries”選項卡中點“+”號,選“Java”:

wpsFA88.tmp

這裡只需要匯入一個jar包即可(記住,目錄不要選錯,要選剛才拷進去的jf-tc模組下lib目錄的jfinal-2.0-bin-with-src.jar檔案)。

wpsFA99.tmp

注意:選中目標Jar包後,選模組的時候,一定不要選錯。

wpsFAAA.tmp

點“OK”後,來到Artifacts選項卡:

wpsFACA.tmp

新增一個Artifact

wpsFADA.tmp

記住不要選錯模組。

新增成功後,記住Fix掉警告資訊(新加的兩個Artifact都要fix)。然後都選上“Build on make”選項。

wpsFAFB.tmp

至此,兩個模組都建好,可以開始真正的編寫程式碼之旅了。

三、修改執行配置

1.建立Jetty執行配置

點選【run】-【Edit Configurations】選單:

wpsFB1B.tmp

出現下面的介面,並點選左上角的“+”號,選“Application”選項:

wpsFB3B.tmp

設定一個名稱,在這裡命名為“jf-jt-jetty”。

設定Main Class(在出來的“Choose Main Class”窗口裡直接輸入com.jfinal……,下面會直接把class列出來,不用搜索和查詢).

wpsFB7A.tmp

設好Main Class以後,設定“working directory”和“Use classpath of module”兩項,如下圖所示:

wpsFB9B.tmp

點選“OK”,設定完成。

2.建立tomcat執行配置

點選【run】-【Edit Configurations】選單:

wpsFBEA.tmp

選擇【Tomcat Server】-【local】選單:

wpsFC0A.tmp

配置Tomcat引數,起一個名字,然後點選最右邊的“+”號,增加一個Artifact:

wpsFC1A.tmp

在出來的視窗中,選“jf-tc:war exploded”即exploded的那個war。

wpsFC4A.tmp

點選“OK”後,就配置完成了。

wpsFC5B.tmp

注意,這個Application context裡填寫的路徑,是你除錯或執行時出現的url的字尾,比如,如果你在此設定“/”,則最後是通過“http://localhost:8080/”執行和除錯;假如你在此設定為“/test”,則最後是通過“http://localhost:8080/test”進行訪問和除錯。

四、新增原始檔

現在可以新增原始檔了。我們可以分別在兩個專案下建立原始檔(建原始檔的過程不管上面jetty和tomcat專案都是一樣的,我們以tomcat專案來舉例):

我們在src路徑下,新增一個package名稱為com.demo.

wpsFD75.tmp

wpsFD85.tmp

再在這個package下建三個類:

wpsFDA5.tmp

wpsFDA6.tmp

內容如下:

wpsFDC7.tmp

另外再建兩個類HelloController.java和Indexcontroller.java,內容分別如下:

wpsFDC8.tmp

wpsFDD8.tmp

編輯模組下,web\WEB-INF路徑下的web.xml檔案,內容如下:

wpsFDE9.tmp

至此,tomcat部分已經完成,按同樣的方式配置jetty部分(也可以直接把package和web.xml檔案直接拷貝過去)。

五、執行專案

1.在jetty下執行

點選【Run】-【Run】選單:

wpsFDF9.tmp

頁面中間會出現讓你選擇執行哪個模組的選項,我們選擇jetty的模組。

wpsFDFA.tmp

此時IDEA介面下半部會顯示jetty的啟動資訊,如下:

wpsFE0B.tmp

說明jetty已經正常啟動了。

此時需要手動開啟瀏覽器頁面,輸入“http://localhost”,就會出現Index控制器對應的頁面。(注意,如果你的電腦上裝了別的Web伺服器,注意埠衝突)。

wpsFE1C.tmp

IDEA下部視窗會出現相應的除錯資訊。

wpsFE2C.tmp

輸入http://localhost/hello,會出現hello控制器對應的頁面。

wpsFE3D.tmp

2.在tomcat下執行

同樣點選【Run】-【Run】選單,在頁面中心的彈出選單選“jf-tc-tomcat”。

IDEA介面下半部分會顯示啟動tomcat過程中的日誌,等待tomcat啟動後,會自動呼叫本地瀏覽器視窗,把index頁面內容顯示出來。

wpsFE4D.tmp

輸入http://loaclhost:8080/hello

出來hello控制器中的內容:

wpsFE4E.tmp

六、專案實際部署

Intellij IDEA打包的war檔案位於專案根目錄的out目錄下。

wpsFE5F.tmp

把此檔案拷貝到tomcat的webapps目錄下(可以改名,例如改名為test.war),無需做任何修改,啟動tomcat後,直接訪問:http://ip:8080/test/即可正常訪問頁面。

要更改輸出目錄,請在【File】-【Project Structure】-【Project】標籤頁修改即可。

wps3E7B.tmp