2012-07-09 47 views
0

我有一個獨立的java程序,包括我自己的jar和許多獨立的庫作爲單個存檔(構建wby maven,實際上是15個JAR文件)。做一些人已經有一個很好的解決方案,他/她可以向我推薦如何避免這種情況並使包裝變得更加智能?尋找獨立的類加載器

例如像EAR壓縮包這樣的包裝會很棒,但是在我的非Java EE應用程序中可以使用任何獨立的EAR類加載器嗎?

回答

2

還有Eclipse Fat Jar plugin。在他們自己的話說:

肥罐Eclipse插件是一個部署工具,其部署的 Eclipse的Java的項目到一個可執行的JAR文件。

它將條目「Build Fat-JAR」添加到導出嚮導中。除了 日蝕標準jar-exporter引用的類和jar包含在「Fat-Jar」中的 ,所以生成的jar包含所有需要的類 類,並且可以直接用「java -jar」執行,沒有類路徑 has被設置,不需要部署額外的罐子。

插件考慮了Jars,External-Jars,用戶庫,系統庫,類文件夾 和Project-Exports。 Main-Class可以選擇 並將Manifest-files合併。 One-JAR選件 集成了由Simon Tuffs( http://one-jar.sourceforge.net/)編寫的專門的Class-Loader,它可以在一個 罐子內處理jar文件。個別文件和文件夾可以被排除或添加到jar中。 不同的設置可以通過 上下文菜單作爲「快速構建」存儲和重新執行。

+0

這一個聽起來我在找什麼:「Simon Tuffs編寫的類加載器(http://one-jar.sourceforge.net/),它處理jar中的jar文件」 – 2012-07-09 14:11:58

1

嗯,我不知道你在用哪個IDE。我有Eclipse Indigo(3.7)。對我來說,步驟很簡單:在你的Java項目文件夾

  1. 右鍵單擊
  2. 單擊導出
  3. 上,來了選擇Java>運行的JAR文件的窗口,然後單擊下一步
  4. 在在下一個窗口中,選擇你希望你的程序在
  5. 運行選擇目標文件夾
  6. 在「Library處理:」配置部分確保您選擇「提取requir ed庫生成JAR「,這將打開你的庫,然後將它們重新打包到你的完成.jar
  7. 單擊完成
  8. 你完成了!請享用。

如果您的食譜版本少於Ganymede(3.4),您需要獲取Fat Jar Plug-in

+0

這些步驟基本相同作爲Fat Jar插件。 Fat Jar插件已集成到Eclipse Ganymede中。 – 2012-07-09 14:08:17

+0

使用eclipse不是一個選項,我也不想提取依賴jar,因爲它們中的一些可能有內部資源。我正在尋找的是某種「外部」容器,我可以將它放入JAR中,正如我可以使用EAR一樣。 – 2012-07-09 14:11:19

相關問題