JAR(1) JDK Commands JAR(1) (NAME) jar - (SYNOPSIS) jar [OPTION ...] [ [--release VERSION] [-C dir] files] ... (DESCRIPTION) jar ZIP ZLIB . jar ( JDK 11 ) JDK 9 jar JAR . JAR . jar tar . . . ( ) ( ) HTTP . . jar . jar . JAR class path . JAR module-info.class .jar . jar jar : o --module-version o --hash-modules o --module-path : . (MAIN OPERATION MODES) jar . jar . . . -c --create . -i FILE --generate-index=FILE (index) JAR . . -t --list . -u --update JAR . -x --extract ( ) . ( ) -k . -d --describe-module . --validate JAR . Integrity of a JAR File ..SH " (OPERATION MODIFIERS VALID IN ANY MODE)" jar . -C DIR (create) files () . jar [OPTION ...] [ [--release VERSION] [-C dir] files] (extract) JAR . create extract . -f FILE --file=FILE . --release VERSION JAR (multirelease) . JAR META-INF/versions/VERSION/ VERSION . JAR JDK VERSION (major version) JDK . VERSION JAR . -v --verbose . CREATE UPDATE (OPERATION MODIFIERS VALID ONLY IN CREATE AND UPDATE MODES) create update : -e CLASSNAME --main-class=CLASSNAME (entry point) JAR . -m FILE --manifest=FILE . -M --no-manifest . --module-version=VERSION JAR JAR . --hash-modules=PATTERN JAR JAR . -p --module-path . @file jar . CREATE UPDATE GENERATE-INDEX (OPERATION MODIFIERS VALID ONLY IN CREATE, UPDATE, AND GENERATE-INDEX MODES) create (-c --create) update (-u --update) generate-index (-i --generate-index=FILE) : -0 --no-compress ZIP . --date=TIMESTAMP - ISO-8601 : "2022-02-12T12:30:00-05:00"..SH " (OPERATION MODIFIERS VALID ONLY IN EXTRACT MODE)" --dir DIR JAR . -k --keep-old-files . JAR . . . (OTHER OPTIONS) jar : -h --help[:compat] jar . --help-extra . --version . JAR (INTEGRITY OF A JAR FILE) JAR ZIP JAR jar . --validate JAR : o Zip o Zip: o o '.' '..' o '\' o o '.' '.. o (API) jar . jar 0 / (>0) . JAR . JAR (EXAMPLES OF JAR COMMAND SYNTAX) o classes.jar Foo.class Bar.class . jar --create --file classes.jar Foo.class Bar.class o classes.jar Foo.class Bar.class 2021 Jan 6 12:36:00. jar --create --date="2021-01-06T14:36:00+02:00" --file=classes.jar Foo.class Bar.class o classes.jar mymanifest foo/ . jar --create --file classes.jar --manifest mymanifest -C foo/ o JAR foo.jar classes/module-info.class . jar --create --file foo.jar --main-class com.foo.Main --module-version 1.0 -C foo/classes resources o JAR foo.jar JAR . jar --update --file foo.jar --main-class com.foo.Main --module-version 1.0 -C foo/module-info.class o JAR (multi-release) foo.jar classes JAR classes-10 META-INF/versions/10 JAR . classes/com/foo : com.foo.Hello ( ) com.foo.NameProvider JDK 8 . classes-10/com/foo com.foo.NameProvider JDK 10 JDK 10 . classes classes-10 JAR foo.jar . jar --create --file foo.jar --main-class com.foo.Hello -C classes . --release 10 -C classes-10 . JAR foo.jar : % jar -tf foo.jar META-INF/ META-INF/MANIFEST.MF com/ com/foo/ com/foo/Hello.class com/foo/NameProvider.class META-INF/versions/10/com/ META-INF/versions/10/com/foo/ META-INF/versions/10/com/foo/NameProvider.class META-INF/MANIFEST.MF JAR com.foo.Hello . ... Main-Class: com.foo.Hello Multi-Release: true com.foo.Hello com.foo.NameProvider JDK 10 com.foo.NameProvider META-INF/versions/10/com/foo/ . JDK 8 com.foo.NameProvider JAR com/foo . o my.jar classes.list. : jar JAR (@) jar . jar --create --file my.jar @classes.list jar JAR . o JAR foo.jar /tmp/bar/: jar -xf foo.jar -C /tmp/bar/ : jar --extract --file foo.jar --dir /tmp/bar/ JDK 26.0.2.1 2026 JAR(1)