On 11/19/2014 4:09 PM, Mandy Chung wrote:
On 11/19/2014 3:49 PM, Mandy Chung wrote:
On 11/19/2014 12:50 PM, Daniel Fuchs wrote:
On 11/19/14 9:36 PM, Mandy Chung wrote:
resources.jar will be gone when we move to the modular runtime
image (JEP 220 [1]).
JDK-8065138 and JDK-8065365 will become non-issue in JDK 9.
Do you mean that the property files will no longer be stripped of
their comments?
(sorry for my delay in reply as I was trying to get the number of the
resources in the modular image vs resources.jar but got distracted.)
The current version copies all bytes when generating the modular
image. This is a good question whether we should strip off the
comments when writing to the modular runtime image. I think we
should look at the footprint and any performance saving and determine
if we should do the same in JDK 9.
I looked at the exploded image under BUILD_OUTPUTDIR/jdk/modules/java.xml
and found that the comments of Encodings.properties are stripped. I was
confused with the mention of resources.jar that I assume it was a step
stripping the comments before writing to resources.jar. This is still
an issue in jigsaw m2 I believe.
Where does the build strip the comments?
A previous issue was that the build process strips off anything after
'#' when copying properties files. In JDK8:
jaxp/make/BuildJaxp.gmk:
$(JAXP_OUTPUTDIR)/classes/%.properties: $(JAXP_TOPDIR)/src/%.properties
$(MKDIR) -p $(@D)
$(RM) $@ $@.tmp
$(CAT) $< | LANG=C $(NAWK) '{ sub(/#.*$$/,"#"); print }' > $@.tmp
$(MV) $@.tmp $@
This was fixed in JDK 9. The per-repo process was removed. It looks
like the properties processing process is now consolidated into
make/common/JavaCompilation.gmk. So the issue Daniel found is new (in
terms of stripping). Search 'properties files' to see the macro.
Joe
Mandy