I wanted to get the rationale as to why build.properties from ${user.home} is more dominant than build.properties and project.properties from the project dir.

This has always seemed ass-backwards to me, and is in fact backwards to the order in which a number of ant projects I've seen (and mine) always did it. I always use ${build.properties} in user home as a source of default values, which can then be overriden on a project by project basis, as needed. If instead ${user.home} properties are the most dominant, those properties can not be used as a source of any defaults any longer, since they would wipe out any customizations in the project itself.

Now I take it that the Maven devs have always seen ${user.home}/build.properties not as a source of default values, but as a way to override project values, but in this respect I think that location is almost useless, since you would override all projects on the system, and in any case, there exists a mechanism at the project level to override properties, that is, build.properties at the project level being dominant over propect.properties.

I took a look through various open-source projects to see how their ant files did it. It's interesting that you find both orders in jakarta-commons, not very-consistent. You also find both orders in other projects. Generally though, from what I could see, the majority of the projects (if they used a build.properties from ${user.home} at all, make the local project one the most dominant. I also found some projects where the file in ${user.home} was called something else, not build.properties. Again, generally those values are overriden by local values.

Somewhat of an unfortunate mess... Is there any chance I can convince you guys to reverse the order?

Regards,
Colin




--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to