jar




jar - Java ARchive ?????????


Documentation Contents


p, li {font-size: medium;
font-family: serif}

code, tt, pre {font-size: 125%;
font-family: monospace;
font-weight;
color: black;
}

.red {color: red }



jar - Java ARchive ?????????

jar ??????????????????????????? 1 ?????? JAR ????????????????????????????????????????????????


??????
??????
???????????????
?????????????????????????????????
???
????????????




??????





JAR ?????????????????????
jar c[v0Mmfe] [manifest] [jarfile] [entrypoint] [-C dir] inputfiles [-Joption]


JAR ?????????????????????
jar u[v0Mmfe] [manifest] [jarfile] [entrypoint] [-C dir] inputfiles [-Joption]


JAR ?????????????????????
jar x[vf] [jarfile] [inputfiles] [-Joption]


JAR ??????????????????????????????????????????????????????
jar t[vf] [jarfile] [inputfiles] [-Joption]


JAR ?????????????????????????????????????????????
jar i jarfile [-Joption]




??????



cuxtiv0Mmfe
jar ??????????????????????????????????????????


jarfile
?????? (c)????????? (u)????????? (x)????????????????????????????????? (t) ?????????????????? JAR ???????????????f ????????????????????????????????? jarfile ?????????????????????????????? ??????????????????????????????????????????????????????????????????????????????????????????f ??? jarfile ??????????????????????????????????????????JAR ???????????????????????????????????? (x ????????? t ?????????)?????????????????????JAR ????????????????????????????????????(c ????????? u ?????????)???


inputfiles
jarfile ????????????????????? (c ????????? u ?????????)???jarfile ???????????? (x ?????????) ????????????????????? (t ?????????) ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? O (??????) ????????????????????????????????????????????????


manifest
name:value ???????????????JAR ??????????????? MANIFEST.MF ???????????????????????????????????????????????????????????????-m ????????????????????????????????? manifest ?????????????????????????????? ??????????????????????????????????????????????????????????????????????????????????????????m???f???????????? e ?????????????????????manifest???jarfile???entrypoint ??????????????????????????????????????????????????????


entrypoint
???????????? JAR ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????-e ?????????????????? entrypoint ?????????????????????????????? ????????????????????????????????????????????????????????????????????????????????????m???f???????????? e ?????????????????????manifest???jarfile???entrypoint ??????????????????????????????????????????????????????


-C dir
??????????????? inputfiles ???????????????????????????????????????????????? dir ?????????????????????????????????-C dir inputfiles ??????????????????????????????????????????


-Joption
Java ?????????????????????????????????????????????-J ??? option ???????????????????????????????????????????????????








??????

jar ??????????????????????????????????????? 1 ?????? JAR ???????????????????????????????????????????????? jar ??????ZIP ????????? ZLIB ?????????????????????????????????????????????????????????????????????????????????????????????????????? jar ????????????????????????????????????????????? Java ????????????????????????????????????????????? 1 ????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? (???????????????????????????????????????????????????) ??? 1 ???????????????????????????????????????????????????Java ?????????????????? (??????????????????) ?????????????????????????????????????????? 1 ?????? HTTP ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ?????????jar ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????jar ????????????????????????tar ?????????????????????????????????????????????JAR ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????


???????????????????????? JAR ???????????????????????????????????????????????????????????????????????????

% jar cf myFile.jar *.class


??????????????????????????????????????????????????????????????? (.class) ???????????????????????????myFile.jar ??????????????????????????????????????????????????????jar ???????????????????????????META-INF/MANIFEST.MF ???????????????????????????????????????????????????????????????????????????????????????????????????JAR ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? name : value ?????????????????????????????????jar ???????????????????????????????????????????????????????????????????????????????????????????????????????????????JAR file specification?????????????????????????????????

???????????????????????????????????????????????????????????? name : value ????????? JAR ?????????????????????????????????????????????????????????????????????????????????????????? -m ?????????????????????????????????????????????


% jar cmf myManifestFile myFile.jar *.class


??????????????????????????????????????????????????????????????????????????????????????????????????? ??????????????????????????????????????????????????????????????????????????????jar ?????????????????????????????????????????????

???: ?????????????????? cmf ???????????? cfm ?????????????????? jar ???????????? (m ??? -f ???????????????????????????????????????) ????????????jar ???????????????????????? JAR ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ???????????????????????????

% jar cfm myFile.jar myManifestFile *.class


????????????????????????RFC822 ASCII ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

JAR ?????????????????????????????????????????????????????????x ?????????????????????

% jar xf myFile.jar


jar ????????????????????????????????????????????????????????????????????????????????????????????????????????????

% jar xf myFile.jar foo bar


Java 2 SDK ?????????????????? 1.3 ???????????????jar ??????????????????????????? JarIndex ???????????????????????????????????? JarIndex ???????????????????????????????????????????????????????????????????????? JAR ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? JAR ????????????????????????????????????????????????????????????????????????????????????????????????????????? JAR ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? -i ?????????????????????????????? jar ?????????????????????????????????????????????????????????????????????????????????????????? JAR ???????????????????????????????????????????????????????????????????????????????????? JAR ?????????????????????????????????????????????????????????????????????????????? ?????????????????????????????????????????? JAR ??????????????????JAR ????????????????????????????????????????????? Class-Path ???????????????????????????????????????????????????
% jar i main.jar


??????????????????INDEX.LIST ??????????????? main.jar ??? META-INF ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????????????????????????????????????????? ???JarIndex ???????????????????????????????????????


??????????????????????????????????????????????????? dir1 ??????????????????????????????????????????????????????????????????????????????????????? dir2 ?????????????????? (????????? jar ?????????????????? -f ????????????????????????)??? ???????????????????????????

% (cd dir1; jar c .) | (cd dir2; jar x)


jar ???????????? JAR ??????????????? JAR ????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????Java Tutorial?????? JAR ???????????????????????????????????????





???????????????






c


jarfile ?????????????????????????????????????????????????????????????????? (f ??????????????????????????????)????????????????????????????????? (f ??? jarfile ??????????????????????????????)???inputfiles ???????????????????????????????????????????????????????????????????????????????????????????????????




u


inputfiles ????????????????????????????????????????????????????????????????????????????????????????????????????????? jarfile ?????????????????? (f ??????????????????????????????)???

?????????????????????


jar uf foo.jar foo.class


???????????????????????????????????? foo.class ???????????? JAR ???????????? foo.jar ???????????????????????????????????????????????????-u ???????????????????????????????????????????????????????????????????????????


jar umf manifest foo.jar


foo.jar ????????????????????????????????????????????? name:value ???????????????????????????




x


jarfile ?????? (f ??????????????????????????????)?????????????????????????????? (f ??? jarfile ??????????????????????????????)?????????????????????????????????????????????????????????inputfiles ????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????




t


jarfile ?????? (f ??????????????????????????????)?????????????????????????????? (f ??? jarfile ??????????????????????????????)????????????????????????????????????????????????inputfiles ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????




i
??????????????? jarfile ??????????????????????????? JAR ?????????????????????????????????????????????????????????????????????????????????????????????

jar i foo.jar

????????????????????????foo.jar ?????? INDEX.LIST ????????????????????????????????? ???????????????????????????foo.jar ??????foo.jar ??? Class-Path ???????????????????????????????????? JAR ????????????????????????????????????????????????????????????????????????????????????????????????

??????????????????????????????????????????????????????




f


?????? (c)????????? (u)????????? (x)??????????????????????????? (i)?????????????????? (t) ????????????????????? jarfile ?????????????????????f ????????????????????????????????? jarfile ?????????????????????????????? ??????????????????????????????????????????????????????????????????????????????????????????f ??? jarfile ??????????????????????????????????????? JAR ???????????????????????????????????? (x ????????? t ?????????)?????????????????? jar ??????????????? ??????????????????????????? (c ????????? u ?????????)???




v


?????????????????????????????????????????????????????????????????????????????????




0


(??????) ZIP ??????????????????????????????????????????????????????




M


??????????????????????????????????????????????????????????????? (c ????????? u ?????????)??? ?????????????????????????????????????????????????????????????????????????????????????????????????????? (u ?????????)???




m


META-INF/MANIFEST.MF ???????????????????????????????????????????????????????????? manifest ??? name :value ??????????????????????????????????????????????????????????????????????????????????????? jar ????????? name : value ??????????????????????????????????????????????????????????????????jar ?????????????????????????????????


?????????????????????m ??? f ???????????????manifest ??? jarfile ????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????


jar cmf myManifestFile myFile.jar *.class


??????????????????????????????????????????????????????????????????????????????????????????????????? name : value ????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? JAR ??????????????????????????????????????????????????????????????????????????????????????????????????????-m ????????????????????????????????????????????????Java Tutorial???????????????JAR Files??????????????????????????????????????????





e


???????????? JAR ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????entrypoint ??????????????????????????????????????????????????????????????????????????????????????????????????? Main-Class ???????????????????????????????????????????????????

???????????????????????????JAR ??????????????????????????????????????????????????????????????????


?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????


???????????????????????????????????? Main.jar ???????????????????????????????????????????????????????????????????????? Main-Class ???????????? Main ????????????????????????


jar cfe Main.jar Main Main.class



???????????????????????????????????? java ?????????????????????????????????????????????????????????????????????????????????



java -jar Main.jar


??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? (???.???) ???????????????????????? (???/???) ???????????????????????????????????????Main.class ??? foo ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

jar -cfe Main.jar foo/Main foo/Main.class

?????????

jar -cfe Main.jar foo.Main foo/Main.class


???:  -m ?????????????????? -e ???????????????????????????????????????????????????????????????????????????????????????????????? Main-Class ?????????????????????????????????Main.class ????????????????????????????????????????????????????????????JAR ?????????????????????????????????????????????????????????




-C  dir


jar ???????????????????????????????????? inputfiles ????????????????????????????????????????????????????????????????????????????????? (cd dir)?????????????????????UNIX ??? tar ??????????????????????????? -C ???????????????????????????????????????????????????

???????????????????????????????????????classes ??????????????????????????????????????????????????????????????? bar.class ??? foo.jar ?????????????????????


jar uf foo.jar -C classes bar.class


???????????????????????????classes ?????????????????????????????????classes ??????????????????????????????????????????????????? foo.jar ?????????????????? (jar ?????????????????? classes ???????????????????????????????????????)??? ???????????????????????????????????????????????????bin ?????????????????????????????????xyz.class ??? foo.jar ?????????????????????


jar uf foo.jar -C classes . -C bin xyz.class


classes ??? bar1 ??? bar2 ?????????????????????????????????jar tf foo.jar ?????????????????????JAR ??????????????????????????????????????????????????????


META-INF/
META-INF/MANIFEST.MF
bar1
bar2
xyz.class







-Joption
Java ??????????????? option ?????????????????? option ????????????Java ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 1 ????????????????????????????????????-J-Xmx48M ?????????????????????????????????????????? 48M ?????????????????????????????????-J ???????????????????????????????????????????????????????????????????????????????????????????????????







?????????????????????????????????


jar ????????????????????????????????????????????????????????????????????????jar ?????????????????????????????? (-J ????????????????????????) ????????? 1 ??????????????????????????????????????????????????????????????????????????????????????????????????? jar ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????


???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ???????????????????????????????????????????????????????????????????????????????????????????????? (*) ????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? @ ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????-J ?????????????????????????????????????????????????????? ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????


jar ??????????????????????????????????????????????????????????????????????????????????????? @ ?????????????????????????????????jar ??????@ ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

??????????????????find ??????????????????????????????????????????????????? classes.list ??????????????????????????????



% find . -name '*.class' -print > classes.list


???????????????????????????????????????????????? jar ???????????????????????????Classes.list ??? jar ????????????????????????????????????
% jar cf my.jar @classes.list


?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ???????????????????????????
% jar @path1/classes.list






???


?????????????????????????????????????????????????????????????????????????????????????????? (???????????????????????????????????????????????????????????????????????????????????????) ????????????????????????????????????-v ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

% ls
1.au Animator.class monkey.jpg
2.au Wave.class spacemusic.au
3.au at_work.gif

% jar cvf bundle.jar *
added manifest
adding: 1.au(in = 2324) (out= 67)(deflated 97%)
adding: 2.au(in = 6970) (out= 90)(deflated 98%)
adding: 3.au(in = 11616) (out= 108)(deflated 99%)
adding: Animator.class(in = 2266) (out= 66)(deflated 97%)
adding: Wave.class(in = 3778) (out= 81)(deflated 97%)
adding: at_work.gif(in = 6621) (out= 89)(deflated 98%)
adding: monkey.jpg(in = 7667) (out= 91)(deflated 98%)
adding: spacemusic.au(in = 3079) (out= 73)(deflated 97%)




??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? JAR ????????????????????????????????????



% ls -F
audio/ classes/ images/

% jar cvf bundle.jar audio classes images
added manifest
adding: audio/(in = 0) (out= 0)(stored 0%)
adding: audio/1.au(in = 2324) (out= 67)(deflated 97%)
adding: audio/2.au(in = 6970) (out= 90)(deflated 98%)
adding: audio/3.au(in = 11616) (out= 108)(deflated 99%)
adding: audio/spacemusic.au(in = 3079) (out= 73)(deflated 97%)
adding: classes/(in = 0) (out= 0)(stored 0%)
adding: classes/Animator.class(in = 2266) (out= 66)(deflated 97%)
adding: classes/Wave.class(in = 3778) (out= 81)(deflated 97%)
adding: images/(in = 0) (out= 0)(stored 0%)
adding: images/monkey.jpg(in = 7667) (out= 91)(deflated 98%)
adding: images/at_work.gif(in = 6621) (out= 89)(deflated 98%)

% ls -F
audio/ bundle.jar classes/ images/




JAR ?????????????????????????????????????????????????????????t???????????????????????????????????????



% jar tf bundle.jar
META-INF/
META-INF/MANIFEST.MF
audio/1.au
audio/2.au
audio/3.au
audio/spacemusic.au
classes/Animator.class
classes/Wave.class
images/monkey.jpg
images/at_work.gif






?????????????????????????????????????????????????????????????????????????????? JAR ???????????????????????????????????????i??????????????????????????????????????????:




???????????????????????????????????????????????????????????????????????????????????????main.jar???buy.jar???????????? sell.jar ????????? 3 ?????? JAR ??????????????????????????????????????????main.jar ???????????????????????? Class-path ?????????????????????????????????????????????

Class-Path: buy.jar sell.jar

-i ??????????????????????????????????????????????????????????????????????????? ???????????????????????????????????????

% jar i main.jar

INDEX.LIST ??????????????? META-INF ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????????????????? jar ????????????????????????????????????????????????








????????????

???JAR ???????????????????????? ???JAR ???????????????????????? ???Jar ????????????????????? ???Jar ???????????????????????? (Java Software ??? Web ????????????) ???pack200 ??????????????????????????????









Copyright © 1995-2010 Sun Microsystems, Inc. All Rights Reserved. Please send comments using this Feedback page.

Java Technology









Wyszukiwarka

Podobne podstrony:
Metallica Whiskey In The Jar
jar
JAR 23 Struktury
07 Helmowy Jar
uruk jar
jar
Jar City
jar
jar

więcej podobnych podstron