Here’s the project structure.

/workspace/test/classes/com/favtuts/awt/AwtExample.class
/workspace/test/classes/com/favtuts/awt/AwtExample2.class
/workspace/test/classes/com/favtuts/awt/AwtExample3.class
/workspace/test/classes/manifest.txt

P.S Assume you are in “/workspace/test/classes/

1. Create a jar file

-c create new archive
-v generate verbose output on standard output
-f specify archive file name

1.1 Create a Jar file which include AwtExample.class only.

jar -cvf test.jar com/favtuts/awt/AwtExample.class

1.2 Create a Jar file which include AwtExample.class and AwtExample1.class.

jar -cvf test.jar com/favtuts/awt/AwtExample.class com/favtuts/awt/AwtExample1.class

1.3 Create a Jar file which include the all classes

jar -cvf test.jar com/favtuts/awt/*.class

2. Update a jar file

-u update existing archive

2.1 Update test.jar by adding a new class AwtExample3.class

jar -uvf test.jar com/favtuts/awt/AwtExample3.class

3. Extract a jar file

-x extract named (or all) file
s from archive

3.1 Extract all files from test.jar to current location.

jar -xvf test.jar

3.2 Extract only AwtExample.class.

jar -xvf test.jar com/favtuts/awt/AwtExample.class

3.3 Extract all files from “com” folder only.

jar -xvf test.jar com

3.4 Extract all files to another folder. Oppss..jar doesn’t has option to extract files to another folder directly. The best is changed to your prefer folder and extract it from there.

mkdir newdir
cd newdir
jar -xvf /workspace/test/classes/test.jar

4. List files from a jar file

-t list table of contents for archive

4.1 List all files.

jar -tf test.jar

5. Add manifest into jar file

Read this manifest reference, you can use this manifest file to define application’s entry point, adding classpath or package version.

-m include manifest information from specified manifest file

The common use case is create a Java exe file, or executable JAR file.

5.1 Add “Main-Class” and entry point in your manifest file

Main-Class: com.favtuts.awt.AwtExample

Jar them all

jar -cvfm AwtExample.jar manifest.txt com/favtuts/awt/*.class

P.S More detail…

References

  1. JAR documentation for more examples and documentation.
  2. manifest reference guide
  3. how to make a Java exe file

Leave a Reply

Your email address will not be published. Required fields are marked *