????????
?????????е???????????y????д????????? class ???????????? jar??????и?????????????????????????????? java ???????????????Щ?????
????????
??????????????????? com.demo?????? com.demo.Main ??????????????????????????????μ? bin ??????£????????????
????Main.java ????:
1 package com.demo;
2 public class Main{
3
4 public static void main(String[] argvs){
5 ????System.out.println("-------****Hello world!***-------");
6 }
7
8 }
?????????????????а?????????????????????′????????????????У?????????????????£????????????????????????????? javac ????
????1 mkdir bin #?????????
????2 javac com/demo/Main.java -d bin #???? bin ??????????? com/demo/Main.class ???
???????
??????? bin ???????????????? jar ??
????1 touch bin/property.pro
????2 jar -cvfm main.jar mymanifest -C bin .#???? mymanifest ??? m ????? mymanifset ????? jar ?е? META-INF/MANIFEST.MF?????????嵥??????????-C ??????????????? (??????????????????) ?????????? . ???????????
????3 #?????????????????????? main.jar ?????????????? bin ?μ????????
???????? jar ??????
????1 mkdir res
????2 touch res/map.property
????3 jar -uvf main.jar res/map.property #????????? jar ?????????????? res ???????????? map.property ??????????????????????????????
????4 #jar -uvfm main.jar manifest ?????????嵥?????? m ???
???????
????jar -xvf main.jar #???????????? main.jar ???????????????·??
????????
????1 java -jar main.jar #java -classpath main.jar com.demo.Main
????2 #???
????3 -------****Hello world!***-------
?????ο?
1 javac
2
3 ?÷?: javac <options> <source files>
4 ???У? ???????????:
5   -g                         ???????е??????
6   -g:none                    ???????κε??????
7   -g:{lines??vars??source}     ??????Щ???????
8   -nowarn                    ???????κξ???
9   -verbose                   ????й????????????е?????????
10   -deprecation               ???????????? API ???λ??
11   -classpath <·??>            ???????????????????????????λ??
12   -cp <·??>                   ???????????????????????????λ??
13   -sourcepath <·??>           ?????????????????λ??
14   -bootclasspath <·??>        ???????????????λ??
15   -extdirs <??>              ??????????????λ??
16   -endorseddirs <??>         ???????????·????λ??
17   -proc:{none??only}          ?????????????????/?????
18   -processor <class1>[??<class2>??<class3>...] ????е???????????????; ???????????????
19   -processorpath <·??>        ?????????????????λ??
20   -parameters                ???????????????????????????
21   -d <??>                    ???????????????????λ??
22   -s <??>                    ??????????????????λ??
23   -h <??>                    ???????????????????????λ??
24   -implicit:{none??class}     ??????????????????????????
25   -encoding <????>             ??????????????????
26   -source <???а?>              ??????????а?????????
27   -target <???а?>              ??????? VM ?汾???????
28   -profile <???????>            ????????? API ???????????????п???
29   -version                   ?汾???
30   -help                      ?????????????
31   -A?????[=?]                  ??????????????????
32   -X                         ??????????????
33   -J<???>                     ???? <???> ????????????
34   -Werror                    ???????????????
35   @<?????>                     ?????????????????
1 jar
2
3 ?÷?: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...
4 ???:
5     -c  ?????μ???
6     -t  ?г???????
7     -x  ??????????????? (??????) ???
8     -u  ???????е???
9     -v  ???????????????????
10     -f  ????????????
11     -m  ????????嵥????е??嵥???
12     -n  ?????μ???????? Pack200 ?淶??
13     -e  ?????????? jar ??????????ó???
14         ?????ó???????
15     -0  ???洢; ??????κ? ZIP ???
16     -P  ??????????е???? '/' (·??) ?? ".." (????) ???
17     -M  ????????????嵥???
18     -i  ?????? jar ??????????????
19     -C  ?????????????????????????
20 ????κ????????? ???????е?鴦???
21 ?嵥??????? ??????????????????????????
22 ?? 'm'?? 'f' ?? 'e' ???????????????
23
24 ??? 1: ????????????鵵???????? classes.jar ???????:
25        jar cvf classes.jar Foo.class Bar.class
26 ??? 2: ??????е??嵥??? 'mymanifest' ??
27            ?? foo/ ???е?????????鵵?? 'classes.jar' ??:
28        jar cvfm classes.jar mymanifest -C foo/ .