1 |
12 |
jlechner |
This directory contains the FastJar package, which is not part of GCC but
|
2 |
|
|
shipped with GCC as convenience.
|
3 |
|
|
|
4 |
|
|
=======
|
5 |
|
|
FastJar 0.90
|
6 |
|
|
|
7 |
|
|
12/6/1999
|
8 |
|
|
=======
|
9 |
|
|
|
10 |
|
|
FastJar is an attempt at creating a feature-for-feature copy of Sun's JDK's
|
11 |
|
|
'jar' command. Sun's jar (or Blackdown's for that matter) is written entirely
|
12 |
|
|
in Java which makes it dog slow. Since FastJar is written in C, it can create
|
13 |
|
|
the same .jar file as Sun's tool in a fraction of the time. On my system,
|
14 |
|
|
Sun's jar takes 50 seconds to create a 10MB jar file, while FastJar only takes
|
15 |
|
|
a little over a second.
|
16 |
|
|
|
17 |
|
|
The reason I wrote fastjar is that building .jar files is a regular process
|
18 |
|
|
of the build where I work. The way we have it setup, you have to re-create
|
19 |
|
|
the .jar file everytime you want to test it out, which is about every 5 minutes
|
20 |
|
|
when I'm busy coding. The .jar file wasn't -that- big, but it did take about
|
21 |
|
|
30 seconds to be made, and watching all the garbage collection messages was
|
22 |
|
|
pretty irritating as well. I probably wasted a half-hour a day watching
|
23 |
|
|
Sun's jar tool chug along. By writing the program in C, I spend much less time
|
24 |
|
|
banging my head against the monitor waiting for the build to finish. Yay!
|
25 |
|
|
|
26 |
|
|
FastJar has been tested on Solaris and Linux 2.2.x systems and nothing else.
|
27 |
|
|
It should compile/run without any problems on either system, provided you have
|
28 |
|
|
zlib installed.
|
29 |
|
|
|
30 |
|
|
Please mail any bug reports to burnsbr@ucs.orst.edu.
|
31 |
|
|
|
32 |
|
|
If you use FastJar and want me to add the rest of the features, send me mail
|
33 |
|
|
(toast@users.sourceforge.net). I'll be much more likely to put more work into this
|
34 |
|
|
if I know other people find it useful other than me.
|
35 |
|
|
|
36 |
|
|
As always, this not being a final release, bugs may exist. I test each
|
37 |
|
|
release pretty well, but I can always miss things...
|
38 |
|
|
|
39 |
|
|
Compression will slow things down quite a bit. A 10MB jar file takes about
|
40 |
|
|
1 second on my machine without compression, and 9 seconds with it. If you
|
41 |
|
|
want fastjar to be fast, use the -0 (zero, not O) flag to turn off compression.
|
42 |
|
|
|
43 |
|
|
Supported flags:
|
44 |
|
|
--------------------------
|
45 |
|
|
-c | create a new archive
|
46 |
|
|
-v | verbose output
|
47 |
|
|
-f | specify archive file name
|
48 |
|
|
-m | specify existing manifest file
|
49 |
|
|
-M | don't create manifest
|
50 |
|
|
-0 | store only
|
51 |
|
|
-C | change to dir
|
52 |
|
|
-t | list contents
|
53 |
|
|
-x | extract contents
|
54 |
|
|
|
55 |
|
|
Unsupported flags:
|
56 |
|
|
----------------------------
|
57 |
|
|
-u | update exisiting archive
|
58 |
|
|
|
59 |
|
|
If you use the "unsupported" flags, nothing bad will happen, but then again
|
60 |
|
|
nothing will happen at all.
|
61 |
|
|
|
62 |
|
|
|
63 |
|
|
Unsupported features (in this release):
|
64 |
|
|
---------------------------------------------
|
65 |
|
|
* updating
|
66 |
|
|
* full manifest support (?)
|
67 |
|
|
|
68 |
|
|
Order or features for the future:
|
69 |
|
|
--------------------------------------------
|
70 |
|
|
* archive updating
|
71 |
|
|
* full manifest support
|
72 |
|
|
* filtering
|
73 |
|
|
* dependency checking
|
74 |
|
|
|
75 |
|
|
|
76 |
|
|
===========================================================================
|
77 |
|
|
http://fastjar.sourceforge.net
|
78 |
|
|
toast@users.sourceforge.net
|