yDoc ant target and maven plugin config

yDoc (http://www.yworks.com/en/products_ydoc.htm) is a JavaDoc doclet that adds wonderful, clickable UML diagrams to your JavaDoc.

I have been pestering these guys for a few years for an open source license which they gave me today.

As part payback I thought I would document my configuration of yDoc in my javadoc ant target and my maven pom.xml plugin config. The yDoc guys do not provide either and it can be fiddly to get going.

Ant Target

<!– Produce the javadocs. Includes the JDK1.5 version of yDoc. There is also a 1.4 version but it is different. –>
<target
name=”javadoc”
description=”Creates the javadocs”>

<mkdir dir=”${build.javadoc.dir}”/>
<javadoc
sourcepath=”${src.java.dir}”
destdir=”${build.javadoc.dir}”
packagenames=”net.sf.*”
Package=”true”
overview=”${src.java.dir}/net/sf/ehcache/overview.html”
author=”true”
version=”true”
use=”true”
windowtitle=”${name}”>
<doclet name=”ydoc.doclets.YStandard”
path=”tools/ydoc-2.2_02-jdk1.5/lib/ydoc.jar:tools/ydoc-2.2_02-jdk1.5/resources:tools/ydoc-2.2_02-jdk1.5/lib/class2svg.jar:${build.classes.dir}”
pathref=”project.class.path”>
<param name=”-umlautogen” />
</doclet>

<tag name=”noinspection” description=”IntelliJ Inspection Ignore tag” enabled=”false”/>
<classpath refid=”project.class.path”/>
<header><![CDATA[<a href=”/” target=”_top”>${name}</a>]]></header>
</javadoc>
</target>

Maven reporting plugin config

<!– javadoc –>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<author>true</author>
<bottom>true</bottom>
<destDir>target/site/javadoc</destDir>
<header><![CDATA[<a href=”/” target=”_top”>ehcache</a>]]></header>
<minmemory>128m</minmemory>
<maxmemory>512</maxmemory>
<overview>${basedir}/src/main/java/net/sf/ehcache/overview.html</overview>
<packagenames>net.sf.*</packagenames>
<use>true</use>
<version>true</version>
<windowtitle>${project.name} ${project.version} API</windowtitle>
<doclet>ydoc.doclets.YStandard</doclet>
<docletPath>${basedir}/tools/ydoc-2.2_02-jdk1.5/lib/ydoc.jar:${basedir}/tools/ydoc-2.2_02-jdk1.5/lib/class2svg.jar:${basedir}/tools/ydoc-2.2_02-jdk1.5/resources:${build.classes.dir}</docletPath>
<!–<docletpathref>project.class.path</docletpathref>–>
<additionalparam>-umlautogen</additionalparam>
<tag name=”noinspection” description=”IntelliJ Inspection Ignore tag” enabled=”false”/>
</configuration>
</plugin>

You can see the results of this configuration in ehcache’s online JavaDoc.

Explorer Destroyer

Whenever a nasty IE bug comes out I always fantasize about putting that up on my blog. The problem with acting on that desire is that it is probably unlawful here in Australia and in many other jurisdictions. Plus you are potentially harming someone. So I don’t do it.

Over the years I have gotten very annoyed when sites block browsers other than IE running on Windows. It has made me want to block IE back. When I saw Explorer Destroyer I thought “why not?” So if you are reading this you are not using IE.

I tested the page using IE 5.2 for Mac. It works. And it does not harm.

If you want to help create an IE dark web, go to http://www.explorerdestroyer.com/.