西西軟件園多重安全檢測下載網(wǎng)站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁編程開發(fā)java → Maven 與 IntelliJ IDEA 的完美結(jié)合

Maven 與 IntelliJ IDEA 的完美結(jié)合

相關(guān)軟件相關(guān)文章發(fā)表評論 來源:✡秘銀✡時間:2010/9/21 17:33:24字體大。A-A+

作者:✡秘銀✡點擊:758次評論:0次標(biāo)簽: Maven Eclipse

  • 類型:益智游戲大。100M語言:中文 評分:10.0
  • 標(biāo)簽:
立即下載
你是否正在學(xué)習(xí)Maven?是否因為Maven難用而又不得不用而苦惱?是否對Eclipse于Maven的沖突而困惑?

那么我告訴你一個更直接更簡單的解決方案: IntelliJ IDEA!

什么是 Maven,為什么要使用 Maven 而不是 Ant

Maven簡單來說是一個項目管理工具,被認(rèn)為是Ant的替代品或者繼任者。事實上Maven的功能要遠(yuǎn)遠(yuǎn)超出Ant,它不僅僅提供編譯的腳本,更是在整個項目周期中提供測試,發(fā)布,文檔生成等功能,并且有著獨特的依賴性管理方法。但是強大的功能的代價就是復(fù)雜的使用方法,第一次使用Maven往往需要將近半個小時的時間(國內(nèi)網(wǎng)速)來下載一個本地的依賴庫,這無疑會使很多開發(fā)人員“知難而退”。雖然廣受詬病,一個不爭的事實就是Maven逐漸代替了Ant,使用Maven也成了Java開發(fā)人員的一個必要技能。


IntelliJ IDEA 與 Eclipse

在Java的世界里,Eclipse毋庸置疑是IDE中的王者,IntelliJ IDEA和NetBeans都只能生活在Eclipse的光環(huán)下。Eclipse的強大已經(jīng)不用我多說了,但其實IntelliJ IDEA也是一個相當(dāng)優(yōu)秀的IDE,尤其體現(xiàn)在它的智能上。它的一個針對.Net的Clone產(chǎn)品ReSharper已經(jīng)被越來越多的C#開發(fā)者所接受。IntelliJ IDEA提供了大量的智能規(guī)則來協(xié)助開發(fā)者,類似代碼補全,用法的轉(zhuǎn)換,格式的提示等等,當(dāng)你習(xí)慣以后,你就會對那個小燈泡愛不釋手。


選擇 Maven + IntelliJ IDEA 的理由

之所以要選擇IntelliJ IDEA,是因為Maven+Eclipse實在太難用了。Eclipse有兩個Maven插件 m2eclipse 和 Eclipse IAM。但是由于Eclipse和Maven設(shè)計上的矛盾,這兩個插件可能都達(dá)不到你想要的效果。m2eclipse 會把你所有類型的項目都是別為Maven類型項目,這對于一個單純的Java項目或許可以,對于一個JEE或者WEB項目都是一場災(zāi)難。Eclipse IAM 并不會改變你的項目類型,但是他提供的功能也就僅僅限于編輯和運行POM文件了,甚至連依賴性都管理不了。相比之下,如果你非要用Eclipse的話我還是推薦你使用Eclipse IAM。Eclipse想要完美的支持Maven恐怕需要在底層設(shè)計上做一些改變,無論是代碼規(guī)范,項目結(jié)構(gòu)規(guī)范和依賴性管理上,都有著不可調(diào)和的矛盾。顯然,在這方面IntelliJ IDEA做的要好的多,以至于你很難說出對它的不滿。

來看看Maven + IntelliJ IDEA 的優(yōu)勢:

一切都是Module :

IntelliJ IDEA借鑒的Maven的概念,不在采取Eclipse里Project的概念,一切都是Module。無論是否使用Maven,你的項目都是一個獨立的Module。并且你可以混搭使用Maven Module和普通的Java Module,兩者可以和諧共存。

支持Multi-module :
可以說Maven的項目結(jié)構(gòu)設(shè)計是非常嚴(yán)格的,現(xiàn)實應(yīng)用中你必須用到Parent - Child的模式。Eclipse由于不支持在一個Project上建立Sub-Project,因此無論如何目前都不能實現(xiàn)。IntelliJ IDEA可以完美的實現(xiàn)這個設(shè)計,并且無論是Module屬性里,還是彼此的依賴性上都不會出現(xiàn)問題。

更方便的生命周期操作 :

比起Eclipse通通放進(jìn)右鍵菜單的行為,IntelliJ IDEA有著單獨的窗口可以完成Maven的操作。你可以針對不同Module進(jìn)行 Clean Compile Package Install等操作,各個Plug-in的操作也一清二楚。

完美的依賴性管理 :

由于Maven會把所有依賴的包放在本機的一個目錄下,所以實際上是脫離Project本身存在的。IntelliJ IDEA引入了一個External Library的概念,所有的Maven依賴性都會放在這里,和項目自帶的庫區(qū)分開。并且Module之間會智能的判斷,你不需要Maven Install來進(jìn)行引用代碼的更新。

動態(tài)更新 :

每當(dāng)Maven相關(guān)的設(shè)置更改時,例如修改了pom的依賴性,添加刪除Module,IntelliJ IDEA會提示你進(jìn)行更新。這種更新實際上就是運行了Maven,所以你不許要手動運行Maven Compile來進(jìn)行更新,也不會像Eclipse里遇到莫名其妙的問題。


總的來說,IntelliJ IDEA對Maven的支持確實很好,它本身也是一款非常優(yōu)秀的IDE,有興趣的朋友不妨試試看。

    相關(guān)評論

    閱讀本文后您有什么感想? 已有人給出評價!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過難過
    • 5 囧
    • 3 圍觀圍觀
    • 2 無聊無聊

    熱門評論

    最新評論

    發(fā)表評論 查看所有評論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)