Have just committed some updates to avalon that correct a multitude of sins committed over the last couple of days (committing stuff in the knowledge that the overall build would break).
As of a few minutes ago we are back to the classic:
$ cd avalon $ ant setup $ ant clean $ ant
Here is a basic picture of what is happening as a result of the above. First off - "ant setup" will install the latest version of Magic into ${user.home}/.ant/lib. The "ant clean" is simply to get your to clean before building so we don't get anyone complaining as a result of builds against dirty content. Then comes the main event "ant". This invokes a reactor build using the "default" target.
The reactor will look into the system index.xml for all projects with a basedir withing the current directory. Then the reactor sorts the projects relative to dependencies (takes less than 0.5 seconds on my machine which means about 0.1 second on LSD machine). The reactor then invokes ant on the individual build files. Most of the time is spent building classic artifacts and installing the result into the common cache. Toward the end of the build we hit avalon-site which is where things get interesting.
The avalon-site project overrides the standard definition of site with the following:
<target name="site" depends="standard.site"> <x:publish path="."/> </target>
The standard definition (executed as a result of the 'standard.site' dependency) invoked javadoc and xdoc generation. The above definition extends this with the publication of the result into a common docs repository. Secondly, the standard javadoc target is overriden with the following definition:
<target name="javadoc"> <x:javadoc title="Merlin Runtime" id="avalon-runtime"> <x:link href="http://java.sun.com/j2se/1.4/docs/api" /> </x:javadoc> </target>
What happens here is that the javadoc is invoked on a completely separate project resulting in the registration of api, spi and impl javadoc for the Merlin Runtime platform into a common docs repository. The site target continues and generates the Avalon site and publishes this into the root of the doc repository using <x:publish path="."/>.
On completion you have the avalon site fully generated including integrated javadoc under the avalon/central/system/.docs/ directory.
And it just works!
Steve.
--
|---------------------------------------| | Magic by Merlin | | Production by Avalon | | | | http://avalon.apache.org | |---------------------------------------|
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]