My build begins by defining 2 properties files, importing another build XML, and then commencing with all my other targets & tasks:
build.main.xml:
<project name="${proj.name}" default="assemble" basedir=".">
<!-- BASIC CONFIGURATIONS -->
<!-- Define build properties. -->
<property file="build.main.properties"/>
<property file="build.app.properties"/>
<!-- Imports. -->
<import file="${alt.build.file}"/>
<!-- Rest of buildscript omitted for brevity... -->
</project>
build.app.properties:
proj.name=test-proj
alt.build.file=build.app.xml
It seems that build.main.xml cannot seem to see/find any properties defined inside build.app.properties; specifically:
- It cannot resolve
${proj.name}, and when I add thebuild.main.xmlfile to the Eclipse Ant view, the name of the build shows up as${proj.name} - It cannot find
build.app.xmlimported frombuild.main.xml
What’s going on here? Do ant builds only get to import one properties file or something?!? Where could I start troubleshooting?
Edit: using Eclipse editor my buildscript does not have any red/highlighted syntax errors that might be causing the ant plugin to work incorrectly, etc.
Edit: I am noticing issues with properties defined inside the build.main.properties to. If I try to echo them they don’t get noticed by Ant either…
The Ant project name cannot be itself a property for the reason Jochen mentioned in his comment.
Try running your script with the
-voption to see more logging. I have used a technique very similar to your<import file="${alt.build.file}"/>to branch my script based on the db platform, so there should be no problem with it.I wondered if your property files are in the same directory then your build script is.