2010-08-18 161 views
2

將Eclipse上的Maven Java項目導出到沒有maven或eclipse maven插件的用戶可能嗎?我想到的第一個問題是如何強制所有依賴包含在導出中。將eclipse maven項目導出爲非maven eclipse項目與依賴關係

我想讓那些不使用Maven的人在Eclipse上導入我的項目並使用它,換句話說,我想生成一個帶有可以通過eclipse導入的項目的zip文件, maven或m2eclipse。

這裏有什麼魔法?

回答

1

任何魔法嗎?

沒有,沒有魔法。你必須:

  1. 得到所有依賴(所有範圍+及物動詞),並將它們複製到,說./lib
  2. 重寫.classpath以指向./lib中的庫。
  3. 打包源碼,將eclipse配置文件打包到某個歸檔文件中。

1.和3.都可以用Maven Assembly Plugin做到。 2. GMaven插件可能會有所幫助。或者也許手動。人們可以想象延長Maven Eclipse Plugin提供某種eclipse:export目標,這會好得多。

但讓我警告你,這根本不容易,誠實地說,對於每個人來說,使用Maven和eclipse:eclipse或m2eclipse都會更容易。

0

如果你喜歡做這個zip,maven-dependency插件是正確的答案和程序集插件。使用依賴項插件複製所有依賴項並通過程序集插件創建一個zip ...可能沒有依賴項插件就可能...您應該檢查有關它的文檔

0

實際上沒有魔術,eclipse項目是無論它是否是Maven項目,都由其.project文件定義。

您可以自由分發您的項目,其他人將能夠成功導入到他們的eclipse實例中,而不會有任何麻煩。

你可以用你的項目一起分發shared eclipse user library文件中指定這些依賴關係,這當然是隔靴搔癢的Maven的靈活性,但它可能的幫助。

+0

問題是'.classpath'文件,它需要重寫。 – 2010-08-19 07:17:24

0

嗯,事實上,還有一種可用現在;-)

如果你喜歡生活在邊緣,你可以嘗試JBoss的工具的開發構建一個神奇的3.3.0(需要靛藍),更具體地說,你需要JBoss工具JDT擴展功能(來自http://download.jboss.org/jbosstools/builds/nightly/trunk/latest/all/repo/更新站點)。 這是執行https://issues.jboss.org/browse/JBIDE-8972

基本上,你右鍵單擊項目資源管理器上顯示的Maven庫,選擇「Materialize Library ...」,選擇目標文件夾,你想要複製的罐子重命名它們)並單擊確定。Jars將被複制,並且相應地更新項目的類路徑。 Maven圖書館和大自然將被刪除。

你只需要壓縮你的項目,並與任何你想要的人分享。

如果您想回到使用maven,請回復您的本地更改(使用svn或git或您正在使用的任何SCM),或者右鍵單擊項目> Configure> Convert to Maven Project,然後刪除你的lib文件夾的內容。