Update JAR "jar -u" Command Syntax
What are syntax rules of the "jar -u" command for updating a JAR file? I am confused on how to specify different options, like v and f.
The "jar -u" command allows you to update an existing JAR file. It has the follow syntax:
jar -u[vfme0] [jar-file] [manifest-file] [entry-point] [list]
"v" option flag returns verbose information on standard output for each entry added to the existing JAR. If "v" is not specified, nothing shows up on the standard output.
"f" option flag specifies the existing JAR file. If "f" is specified, "jar-file" must be provided. If "f" is not specified, the exiting JAR file is read from standard input, and the updated JAR file is written to the standard output.
"m" option flag specifies the manifest file to be merged into the JAR. If "m" is specified, "manifest-file" must be provided.
"e" option flag specifies that the given main class to be used to update in the manifest to make the new JAR executable. If "e" is specified, "entry-point" must be provided.
"0" option flag specifies that new entries to be added with no compression.
"list" must be provided to specify a list of files to be used to update the JAR. If an entry in the "list" is a folder, all files in that folder will be added. If "-C dir entry" appears in the list, the "jar" command will change to the given directory (folder) first before process the entry.
Here are some example of valid "jar -u" commands
jar -uf my.jar Hello.class Update JAR with one class in the current folder type old.jar | jar -u Hello.java > new.jar Read the old JAR from standard input and write the new JAR to standard output jar -uf my.jar -C classes . -C bin xyz.class Update JAR with all files in the "classes" folder and one class from another folder. jar -ufm my.jar my.mf Hello.class Update JAR with one class and merge the manifest file jar -ufe my.jar Hello Update JAR with the main class to make it executable
Back to FAQ for JDK JAR (Java ARchive) Tool.
2016-05-15, 1166👍, 0💬
What Is javamail-1_2.zip? javamail-1_2.zip is the binary package of JavaMail API 1.2 in ZIP format. ...
The goal of the Geronimo project is to produce a server runtime framework that pulls together the be...
If you are running a Java application and receiving an java.lang.ClassNotFoundE xceptionerror, it is...
ASM is an all purpose Java bytecode manipulation and analysis framework. It can be used to modify ex...
What Is log4j-1.2.15.jar? I got the JAR file from apache-log4j-1.2.15.zip. log4j-1.2.15.jar is the v...