Hey,
in case you didn't solve your problem yet - can you post result of verbose ant? Try:
ant -v start.demo
I had a similar problem, in my case ant build was stuck at "Checking for listener at localhost:8080", repeated several times. Then I realized: I have JAVA_HOME variable set to Java 1.7, so I switched to 1.6 and it worked! Detailed steps for Mac OS X: have your JAVA_HOME variable set to output of:
/usr/libexec/java_home -v1.6
In my case, that was:
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
and finally: ant start.demo
Hope some of it helps.