我有一個網絡程序,我希望用戶能夠導入.war
文件,並且我可以從.war
文件中提取某些文件。我找到了兩個類庫:java.util.zip.*
和java.util.jar.*
。據我所知,WAR文件是一個特殊的JAR文件,它是一個特殊的ZIP文件。那麼使用java.util.jar
會更好嗎?如果ZIP和JAR文件幾乎相同,爲什麼需要兩個不同的庫?如何在java中提取.war文件? ZIP vs JAR
回答
像你說的,一個罐子是一個zip文件(不是一個特殊類型,而只是一個普通的舊拉鍊),所以無論是圖書館可以進行工作。理由是,看到* .zip擴展名的普通人往往會將其解壓縮。由於應用程序服務器需要解壓縮,所以簡單的重命名可以防止人們將其從習慣中解壓縮。同樣,* .war文件也應該保持未壓縮狀態。
java.util.jar基本上只是在java.util.zip中增加了額外的功能,但額外的開銷很小。讓java.util.jar成爲發佈等方面的助手,並使用它。
Jar類/包用於特定的Jar文件機制,在某些情況下存在由Jar文件使用的清單。
Zip文件類/包處理所有包含Jar文件的壓縮文件,這是一種壓縮文件。
Jar類因此擴展了Zip包類。
WAR文件只是一個JAR文件,將其解壓,只是發出以下jar命令 -
jar -xvf yourWARfileName.war
如果沒有找到jar命令,有時發生在Windows命令提示符,然後指定完整路徑即在我的情況是,
c:\java\jdk-1.7.0\bin\jar -xvf my-file.war
我用這個命令並提取.war文件..但所有這些都去bin文件夾..可以粘貼命令選擇提取位置 –
http://stackoverflow.com/questions/15830952/extracting-jar-to-specified -directory –
在Java中,OP問道。 –
只需重命名.war
到.jar
和使用Winrar
(或任何其他歸檔管理器)解壓縮。
如果您使用的是Linux或Ubuntu,則可以直接從.war
文件中提取數據。
一個war
文件只是一個jar
文件,使用jar
程序提取它,只是發出以下命令:
jar -xvf yourWARfileName.war
- 1. JAR vs WAR文件規範
- 2. 如何從jar文件中提取zip文件
- 3. 如何在C#中提取ZIP文件
- 4. 在java jar文件中讀取zip文件
- 5. 如何從.java文件中提取.jar(java-> class)
- 6. 提取.zip文件在python
- 7. 如何在java中提取.Z文件?
- 8. 提取ZIP在Java
- 9. 從zip中提取文件
- 10. 創建Zip文件在Windows和提取Zip文件在Linux中
- 11. 如何從JAR中提取文件夾
- 12. 如何從.jar文件中提取類?
- 13. 如何從Java中包裝的Jar中提取文件
- 14. Julia:在Zip文件中提取Zip文件
- 15. 如何從ear/war/jar中讀取文件?
- 16. 廚師 - 如何提取zip文件
- 17. 如何使用php提取.zip文件
- 18. 如何使用Java NIO 2訪問jar-archive中的zip文件
- 19. 提取文件夾中的Zip文件
- 20. 如何在.WAR文件之外提取我的log4j.properties文件?
- 21. 在Visual Basic .NET中提取Zip文件
- 22. rubyzip在activejob中提取空文件
- 23. 從ear文件中存在的war文件中提取文件
- 24. 從Java ZIP壓縮文件中提取UTF-16編碼文件
- 25. 將zip文件轉換爲war文件
- 26. Jar從jar文件中提取的文件夾
- 27. 從Java Applet中的Jar文件中提取文件
- 28. 如何將混淆的jar文件包含到war文件中
- 29. 如何使用Lua從zip文件中提取文件?
- 30. 由crontab提取Zip文件
你將與WAR文件裏的文件怎麼辦? –