views:

147

answers:

3
+1  A: 

Good question. I can only speculate.

But one important detail about the Properties implementation (although not necessarily the specification of the file format) is that it doesn't support multiple values with the same key (which you need for per-entry values in the manifest) and for keeping and representing the order of its entries.

Joachim Sauer
Those are important things for manifests. So while this provides a reason for any kind of deviation from the properties format at all, the question remains why the basic format wasn't kept the same (in fact, wouldn't it have been better to just make the `Properties` implementation more general?).
Jerome Baum
As I'm new to StackOverflow I'm not sure what the "standard procedure" is for accepting answers. I'm just going to wait another day or two and if there are no more answers I'll accept this one -- it's the best so far and brings up an interesting difference between the two formats.
Jerome Baum
A: 

It's probably a historical thing. The manifest format is more restrictive about certain things like maximum line length. It also has a bunch of rules about jar signing, but I think that stuff was added later.

Ken Liu
I just checked up on those signing rules and they basically reduce to @Joachim's comment, i.e. allowing multiple values with the same key and keeping the order intact.As for the maximum line length, good point! It's 70 characters (and according to Wikipedia there are some issues with interpreting the wrapping rules).
Jerome Baum
A: 

You need to also consider the bootstrap problem. The manifest of the first JAR file loaded may not be read by Java code at all ...

EJP
Non argument - for consistency they could have built their bootstrap using the same specification for persistence.
Newtopian
Of course, but it does make clear that java.util.Properties isn't necessarily available and free to use at all times.
EJP