The new Ivy integration prevents the default build (just running "ant") from building the core or the plugins offline, since Ivy tries to check dependencies online and complains if they are not found. Developers don't have to be online to build!
2nd. Even if you have built before and have all of the dependencies, it doesn't work.
Hm, that is not like it should be. You should need to run a retrieve online once so that Ivy can put the files in its cache. And from then on you should be able to work offline as long as the dependencies don't change.
I've investigated and unfortunately there is a bug in Ivy that is causing this, I've reported it here: https://issues.apache.org/jira/browse/IVY-1322
As a quick workaround you can suppress Ivy resolution when wanting to build offline by doing "ant -Divy.done=true". I'm still investigating how to best work around this without the developer needing to do anything.
Ok, I found a good workaround. The problem is only with the launch4j dependency which is in its own resolver anyway because it is not available in Maven central. I've switched validation off for this resolver and now it works fine offline if you did retrieve the dependencies once on that machine and have the files in your ivy cache.