How to unzip/decompress a Java JAR file

I've received a number of searches from Google for "how to unzip a JAR file", so I thought I'd actually write something to help those folks.

Fortunately, this is quite straightforward when you know that JAR files are actually ZIP files! This means we're able to do this using the unzip command:

$ unzip ~/.m2/repository/org/springframework/boot/spring-boot/2.2.4.RELEASE/spring-boot-2.2.4.RELEASE.jar
Archive:  ~/.m2/repository/org/springframework/boot/spring-boot/2.2.4.RELEASE/spring-boot-2.2.4.RELEASE.jar
  inflating: META-INF/MANIFEST.MF
   creating: org/
   creating: org/springframework/
   creating: org/springframework/boot/
   creating: org/springframework/boot/liquibase/
   creating: org/springframework/boot/convert/
   creating: org/springframework/boot/origin/
   creating: org/springframework/boot/task/
   creating: org/springframework/boot/reactor/
   ...

And we're also able to list the JAR file with unzip -l, and also get specific files out:

% unzip ~/.m2/repository/org/springframework/boot/spring-boot/2.2.4.RELEASE/spring-boot-2.2.4.RELEASE.jar org/springframework/boot/context/event/ApplicationPreparedEvent.class
Archive:  ~/.m2/repository/org/springframework/boot/spring-boot/2.2.4.RELEASE/spring-boot-2.2.4.RELEASE.jar
  inflating: org/springframework/boot/context/event/ApplicationPreparedEvent.class

Written by Jamie Tanna's profile image Jamie Tanna on , and last updated on .

Content for this article is shared under the terms of the Creative Commons Attribution Non Commercial Share Alike 4.0 International, and code is shared under the Apache License 2.0.

#blogumentation #java.

This post was filed under articles.

Related Posts

Other posts you may be interested in:

Interactions with this post

Interactions with this post

Below you can find the interactions that this page has had using WebMention.

Have you written a response to this post? Let me know the URL:

Do you not have a website set up with WebMention capabilities? You can use Comment Parade.