I ran into an issue with the property setter in relation to DERBY-1387 (JMX), see below...

Rick Hillegas wrote:

The property setter yields the output I have attached at the bottom.
If I had very custom jar files (spread around in multipe dirs, not in j1Xlib), and maybe a VM vender the property setter doesn't recognize, I would specify java14compile.classpath, java15compile.classpath and java16compile.classpath.

I do not have "very custom jar files" in multiple dirs, and I my VM vendor is Sun. What I do have, is j14lib and j15lib set in my ant.properties file, and a patch which adds a required jar file to java14compile.classpath in the file tools/ant/properties/compilepath.properties.

Now, there is at least one other pitfall, and that is if you are running lower level ant targets. One example is "ant client". The dependencies for this target does not include the compiler property setter task, and thus you will have to do something manually for this to work.

I am not running lower-level ant targets, I am running "ant all"...

Right now I can think of using one of these;
a) Set the java1Xcompile.classpath variables

This resolves my issue.

b) Call the property setter; ant setCompilerProperties client
(for custom directories, I believe you still need j1Xlib variables set manually)
>> c) Use higher-level targets

Irrelevant; I'm using "ant all".

d) Introduce dependencies in the build scripts

It seems that ant has not loaded the contents of tools/ant/properties/compilepath.properties at the time when the PropertySetter runs into action. Since j14lib is set, it sets java14compile.classpath based on what's in j14lib instead of what's in compilepath.properties.

So, parts of compilepath.properties is only used if the PropertySetter is not used. Is this intentional?

Note that my intention is to get rid of the requirement for the extra jar file in the next version of the DERBY-1387 patch, so this won't be an issue for long. I'm just mentioning this in case it might cause trouble later on.


--
John

Reply via email to