




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、java ee7和maven工程入門(2)-編程 開發(fā)技術(shù)java ee7 和 maven i程入門(2)木文由importnew陳顯鷺翻譯自javacodegeekso歡迎加入翻譯小組。轉(zhuǎn)載請見文末要 求。目錄1. 一個簡單maven工程的結(jié)構(gòu)2. 建立一個簡單的war工程先來回顧一下第一部分我們已經(jīng)建立了父pom文件。這種特殊類型的文件用來定義我們項目即將使用的 類庫,它也配置了所有為了打包項目的每個模塊而使用的maven i具。你可以檢 出第一部分代碼。所以,宜到現(xiàn)在我們開發(fā)的項冃冃錄中我們只有一個叫做scimple-peirent的文件 夾。而且在這個口錄小包括pom. xml文件這就
2、是我們的父pom。在我們定義的modules部分屮可以看到,我們的項目由以下兒塊組成: sample-ear sample-web sample-service sample-domain我們需要創(chuàng)建相關(guān)的maven模塊并給每個模塊增加對應(yīng)的pom. xml文件。定義war模塊我們在sample-parent文件夾下創(chuàng)建一個叫做sample-web的子文件夾,并且在 這個文件夾卜面添加一個pom. xml文件(一些人同時完成這兩個步驟)。<project xmlns=,/http:/ni3ven apache. org/pom/4. 0. 0 xmlns:xsi二http:/www. w
3、3. org/2001/xmlschema-instance xsi: schemalocation=,/http:/maven, apache. org/pom/4. 0. 0 http:/maven. apache, org/xsd/maven-4. 0. 0. xsd><modelversion 0. 0/modelversion><parent><groupld>gr. javapapo</groupld><artifactld>sample-parent/artifactld><version>0.
4、0. 1-snapshot</version></parent><arti facttd>sample_web</arti facttd></projcct>但是這個沒啥用。我們需要更加具休指出這個pom會幫助我們構(gòu)建什么。因此我 們需要去定義打包類型,該模塊的名稱(也是war包的名稱)和其他的一些依賴 項。<ar ti factld>saniple-web/artifac tld><packaging>war</packaging><build>finalname>$pro
5、ject. artifacttd</finalame></build>dependencies<dependency><grouptd>javax</grouptd><artifactid>javaccapi</artifoetid<scope>provided</scope>/dependency</dependencies></project>如果你使用支持maven的ide (比如eclipse),會門動發(fā)現(xiàn)pom內(nèi)容的變化。同 時會自動為你創(chuàng)建文件夾,與你的ma
6、ven war包名一致。它會按照下而的結(jié)構(gòu)創(chuàng) 建文件夾。你當(dāng)然可以自己手動創(chuàng)建,借助工具還是很方便的。sample-web srco main java(在這里添加java代碼) webapp(這里就是 web-infweb.xml 的位置) resources (資源,像配置文件)o test java在webapp子文件夾下我已經(jīng)捉前創(chuàng)建好了 web-lnfweb xml文件??梢蕴^這 個環(huán)節(jié),因為maven插件可以幫我做這個工作。這里為了說明如果想要自己創(chuàng)建 或者應(yīng)對其他一些需要自定義項的情況,如果你想知道在空的servlet 3. 1 web. xml文件里面坊點什么,請看看這甲.或
7、者 下載本文的代碼。我已經(jīng)在sample package下的java子文件夾下放了一個非常 簡單的servleto這個將被包含到我們的項目中,只是很少的兒行代碼。你可以 在本文末尾找到git (bitbucket)鏈接,下載木文所有代碼。因此,僅僅在我們的war模塊的pom文件中添加了很少幾行代碼。如果有ide, 這個工具會很神奇的幫我們創(chuàng)建一個非常詳盡的文件布局。我們根據(jù)這個布局然 后添加一個非常簡單的scrvlct java文件和很少的xml描述符。這才是真正的 意圖所在。maven最爽的事情就是,war模塊一些需要去構(gòu)建的東西己經(jīng)在這個特殊的父pom 文件里面被預(yù)先定義和配置好了。但是這
8、些東西是什么,maven將如何去使用它 們?正如我們已經(jīng)描述了 maven的全部約定。通過正確的方法排列正確的事情, 然后它們就會為你完成所有的工作。當(dāng)maven掃描這個war包的時候,它需要去做:編譯我們的java servlet類打包sample-web文件夾下面的所冇?xùn)|西變成一個wai文件和少許依賴項。既然我們沒有添加一些特殊的東西在我們的war pom文件中(除了一個依賴庫), 那誰為我們做的這些工作呢?那當(dāng)然是這個配置和我們的父pom文件了(詳情請 查閱上一篇文章)。這個maven-comp訂er-plugin插件將被觸發(fā)去編譯我們的源文件。既然我們已經(jīng) 定義了 maven模塊的打包
9、是war方式,然后maven-war-plugin插件將被觸發(fā)去 為我們打包一切東西,然后創(chuàng)建適當(dāng)?shù)淖⑨?。?dāng)我們的項目冇好幾個war或者jar模塊情況的時候,如果我們冇一個父pom, 并口我們已經(jīng)為它定義了一個中央位置的插件和基本的配置,那么我們就沒必要 去在其他的那些war或者jar模塊重新定義他們。只有當(dāng)其中的war或者jar模塊需要特別對待的時候(例如,打包-些額外的東 西或者有一個特殊的文件設(shè)計布局)。那么在這個項目部分我們需耍重新定義插 件和重寫或者添加一些其他的東西。但是這些不是我們目前的情況,我們希望我 們的插件只定義一次,而且有一個公共的配置被我們所有的將要使用的項目的其 他的模塊繼承。根據(jù)上面的線索,你可以實驗和嘗試創(chuàng)建我們上面己經(jīng)定義過的 sample-services模塊,或者等待文章的第三部分?,F(xiàn)一個章節(jié)我們將快速的覆 蓋其他的模塊的配置。你可以在這里找到這篇文章對應(yīng)的代碼.資源第一篇 maven war文件夾布局 java ee 7xml 描述
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 別墅花園裝修合同范本
- 《錦瑟》教學(xué)設(shè)計 2024-2025學(xué)年統(tǒng)編版高中語文選擇性必修中冊
- 借貸合同范本u
- 勞動合同范本陜西
- 傳銷性質(zhì)合同范本
- 產(chǎn)品銷售協(xié)議合同范本
- 企業(yè)授權(quán)合同范本
- 2024年重慶大學(xué)機器人研究所招聘筆試真題
- 上海貨物短途運輸合同范本
- 2024年溫州蒼南農(nóng)商銀行招聘筆試真題
- 領(lǐng)導(dǎo)安全生產(chǎn)事故檢討書【8篇】
- 汽車發(fā)動機構(gòu)造與維修PPT(中職)全套完整教學(xué)課件
- 歷屆 最近十年 (新知杯)上海市初中數(shù)學(xué)競賽試卷及答案(含模擬試題及解答)
- 艙門操作(空客系列飛機)
- 臺灣長庚文化村
- 藥理學(xué)免疫器官和組織
- 禮儀與溝通完整版
- 2023年超齡員工承諾書 60歲以上員工承諾書(八篇)
- 001 比較思想政治教育(第二版) 第一章
- 股骨粗隆間骨折PPT
- 供應(yīng)商年度評審記錄表
評論
0/150
提交評論