我已經添加了一些外部庫到我的Java項目(在NetBeans中)。
是否可以將外部jar庫放到java歸檔文件中(而不是將它們放入單獨的(例如)「lib」目錄中)?將外部庫添加到JAR中?
回答
當然可以。有幾個開源項目可以通過包含所有依賴關係的「捆綁包」進行下載。
你需要提取所有的罐子,然後再將它們打成一個文件。
用Ant來做這件事的例子可以看出here。
JarJar項目允許您將依賴jar包打包到一個jar文件中進行分發。
該項目提供了一個ant任務來執行包裝,並且由於NetBeans項目在構建過程中使用Ant,您應該能夠相當容易地將它集成到您的構建中。
如果是將罐子裝入罐子中,則始終爲戰爭或耳朵文件中的網絡應用程序執行此操作。 如果你的應用程序是獨立的,你可以解壓罐子,並將它們一起打包在一個使用Ant jar和unjar任務的jar中:http://ant.apache.org/manual/Tasks/unzip.html 但我不會推薦這樣做。
是的,這是可能的,生成的jar實際上被稱爲「uberjar」或「megajar」。基本上,要創建一個「uberjar」,您需要提取外部庫的內容(使用jar -x
)並在您自己的jar中重新包裝(使用jar -c
)。這可以通過手動或者使用像Ant這樣的構建工具來實現(並且可選擇支持像One-JAR這樣的項目),或者通過maven-assembly-plugin(或maven-shade-plugin)爲此提供內置支持的Maven )
如果您使用的是Maven,您可以考慮Maven shade plugin或程序集插件。
有一種簡單的方法可以通過內置的ant腳本來實現。
又是SO質疑指向這篇文章:http://mavistechchannel.wordpress.com/2010/08/17/how-to-build-a-single-jar-file-with-external-libs/
我加了,但就是這樣一個菜鳥,我不知道如何使用它。 This article有一個很棒的視覺教程。基本上,在修改你的ant腳本後,進入文件標籤(在左邊的資源管理器中)=>右鍵單擊xml =>運行任務=>其他任務=>存儲包(或任何你命名的腳本)
- 1. 將外部庫.jar添加到Spring引導.jar內部/ lib
- 2. 添加外部Jar庫
- 3. 將外部庫添加到IntelliJ IDEA中的工件jar中
- 4. 添加外部JAR到Openshift
- 5. 將外部jar添加到GWT
- 6. 將外部文件添加到jar
- 7. 將外部JAR添加到JDK
- 8. 將droidText添加到Android - 將外部jar添加到Android
- 9. 將jar庫添加到jar文件中
- 10. 如何將jar庫添加到jar中
- 11. 將外部庫添加到項目中
- 12. 將外部.jar添加到Android庫項目
- 13. 錯誤添加GSON庫外部JAR
- 14. 將純類添加爲外部JAR
- 15. 如何在Jupyter內核中將外部jar添加到Scala中
- 16. 在eclipse中將外部jar添加到android項目中
- 17. 添加外部的jar到Eclipse RCP的
- 18. 添加外部.jar到androidstudio項目
- 19. 外部jar添加到eclipse項目
- 20. 如何將外部庫添加到CMakeLists?
- 21. Android將外部庫添加到項目
- 22. 將外部庫添加到PHPMyAdmin
- 23. 將外部庫添加到LibGdx項目
- 24. 將外部庫添加到Symfony2項目
- 25. 如何將外部庫添加到QT?
- 26. 如何將外部jar添加到eclipse rcp應用程序中?
- 27. 將外部JAR文件添加到jBoss 7的類路徑中
- 28. 將外部JAR添加到NetBeans中的Maven項目
- 29. 在eclipse中添加外部jar jwordpress-0.5.1.jar到android項目
- 30. 在新庫/ jar文件中添加外部庫
什麼你的意思是'到java檔案'? – danben 2010-01-09 17:19:35
我猜賈尼想把所有的jar(庫)放入一個,只有一個jar。 – Pierre 2010-01-09 17:21:06