2012-04-16 68 views
5

Netbeans和Eclipse在使用Maven項目時有什麼不同?NetBeans和Eclipse在Maven項目中的差異

+0

你在Eclipse中使用「m2e」嗎? – 2012-04-16 15:12:21

+0

我不太記得我是如何獲得插件的。當我看看Eclipse> Help> Software時,我在已安裝的軟件中看到一些Maven **,但沒有一個被命名爲M2E。 – rk2010 2012-04-16 15:16:52

+1

'NetBeans不支持Apache Maven'。 NetBeans只是將Apache Maven項目視爲「天生」。沒有插件,沒有可笑的工作區(im | ex)端口。這就是我使用NetBeans的原因。 – 2013-02-28 15:07:17

回答

8

我Eclipse用戶,但要完全誠實的,我不得不說,在Eclipse的Maven的支持並不完美,往往會導致你的清潔解決,重新編譯奇怪的錯誤,再生項目文件等

由於據我所知,IDEA和NetBeans對Maven有更好的支持。

2

m2e是「最新」的maven eclipse集成(不要與舊的m2eclipse混淆)。我真的很感謝所有花時間來開發eclipse,maven和m2e的人 - 這是我的日常工作設置,但是m2e遠非完美。只要看看最新的「M2E plugin execution not covered」的困境。如果您使用非主流插件,則必須修改您的pom.xml以使用m2e - 只是爲了避免在eclipse中發生項目錯誤。

要運行我的mave命令,我更喜歡命令行而不是m2e。

據我所知Netbeans使用maven更「原生」,因此沒有那種類型的集成問題。但我不確定。如果你有選擇,你應該比較兩種可能性。

3

從基於maven的項目開始,在Netbeans和IDEA中比使用Eclipse更容易。

  • 在Eclipse中,您必須將現有項目配置爲使用maven。首先啓用一個適當的maven插件
  • 使用Netbeans和maven要容易得多。打開 - >項目 - >選擇pom.xml並準備就緒
  • IDEA有類似的方法。你只需要從現有的pom.xml導入項目

我選擇了IDEA作爲我最喜歡的IDE,我對maven的支持非常滿意。有時我必須打開NetBeans,並且至少Maven支持按預期工作。我自己的Eclipse經驗有些過時,但我聽到很多來自我的同事使用Eclipse和Maven一起使用Eclipse的投訴。

3

NetBeans原生支持Maven。

那是什麼意思?這意味着如果你在NetBeans中有一個基於Maven的項目,那麼pom.xml就是IDE用於項目定義的東西。 POM 的定義!

將此對比於Eclipse,其中Maven支持在Eclipse的項目定義之上被錨定。這意味着任何Eclipse解決方案都必須專注於轉換Eclipse自己的項目定義和POM。我相信這是Eclipse有時不太理想的Maven支持的根本原因。

在NetBeans中,如果您的項目是基於Maven的,那麼所有的操作均由Maven執行。即使是「運行」操作也是由Maven有效完成的。 IDE只觸發它。具有這種一致性意味着您可以確保您的項目的行爲完全相同,例如,在非Jenkins/Hudson等非IDE環境中。

我遇到過很多認爲Maven麻煩的人。當你多說一些時,事實證明他們的糟糕體驗在很大程度上取決於他們從Eclipse內部使用Maven 的經驗,而不是Maven本身。 Eclipse的用戶傾向於認爲這只是它應該的方式,因爲他們從未見過其他任何東西。 (NetBeans用戶在NetBeans次優和Eclipse發光的領域中的做法相反)

讓我們毫不懷疑:Eclipse具有許多優點。 Maven的支持不是其中之一。

1

我已經使用Eclipse和Netbeans。我在大學裏使用了更多的Eclipse,並且在Eclipse和Netbeans之間的專業上它是混合的。

Eclipse遠勝於Netbeans,具體取決於域名。 如果你想和scala一起工作 - 沒有其他辦法,eclipse scala插件被大量維護,並且比Netbeans工作得更好。如果你想與Perl一起工作,同樣的事情。 如果你有一個超過50個大型模塊的大型項目,並且需要進行交叉重構,那麼使用mvn eclipse可以加快速度:在你的根目錄下使用eclipse,並且使用eclipse導入和構建項目,然後從重構開始。

這就是說,當你在做功能開發。你的基礎項目是由maven在CI中構建的。哦!然後我可以向你保證,Netbeans比eclipse要好很多年。當您將Maven作爲構建工具添加到公式中時,他們不在同一聯盟中。

在eclipse中,你必須放棄並說: - 它超出了我讓日食工作作爲我自己的工具,我遠離命令行。如果我甚至去了一個文件夾,並做mvn乾淨安裝,日食與我鬥爭。

對於netbeans,他只是不想重新發明輪子。他讓maven做maven的工作,並建立你的項目。它確實運行你的測試。我個人認爲,對於Java EE開發 - 即添加特性和「不」進行交叉切割大規模重構,並且您的項目基於maven構建,Netbeans是迄今爲止最好的IDE。這十分完美。 它本身就很簡單。簡單而舒適的用戶界面。 完美的調試器。 完美的JSF bean導航。 完美的maven集成。 與Jrebel完美合作。 Netbeans簡單而超級有效。

我發現Eclipse是我的敵人,當我想使用maven來運行所有的單元測試或wahtever的原因。如果我想部署由maven構建的WAR ...最好不要!我需要絕對讓自己進入日食並讓它擁有一切。我需要遠離命令行。