Trying to understand JavaDoc and custom Doclets

Hi I've been trying to understand how JavaDocs and Custom doclets work. I want to create a doclet that will only display methods which has a custom tag, i.e. if a method has @myTag in the comments it'll display all the comments for that method whereas if it doesn't have @myTag it doesn't show any oof the comments

I created a custom taglet and specify the following command in Eclipse:
           -taglet DocPackage.myTag -tagletpath 'C:\\Documents and Settings\\bbermingham\\workspace\\JavaDocTest'

But I want it to output in the standard html format. I think I'll have to completly create a new Doclet which has all the code for creating the html files, css files, etc because the Standard doc really can't be modified (I found). I'm very new to this and really I'm just looking for steps to create this custom doclet. What classes do I need to refer to, do I need to implement another class or extend from Doclet or Standard?

I hope I'm making sense.
rebels_mascotAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

WelkinMazeCommented:
Hi,
Here you can find some info:
http://java.sun.com/j2se/1.3/docs/tooldocs/javadoc/overview.html

And here is a part from it:
Example - Subclassing the Standard Doclet
To customize the output of the Javadoc tool, you need to write your own doclet that specifies the content and format of the output that you desire. If you want HTML output with roughly the same format as the default output, you can use the standard doclet as a starting point for creating your doclet. You can subclass appropriate classes in the standard doclet and then add or override methods as necessary to produce the output you want. Or you can copy the whole standard doclet and modify it. If you use a copy of the standard doclet as your starting point, you may want to remove the package statements at the beginning of each source file and replace them with the name of your own, new package.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
rebels_mascotAuthor Commented:
Thanks for the quick reply WelkinMaze, I've come across that before but not sure how to change the methods they refer to. The Standard.java file is as follows:

/*
 * @(#)Standard.java      1.4 04/07/26
 *
 * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */

package com.sun.tools.doclets.standard;

import com.sun.javadoc.*;
import com.sun.tools.doclets.formats.html.*;


public class Standard {
   
    public static final HtmlDoclet htmlDoclet = new HtmlDoclet();
   
    public static int optionLength(String option) {
        return htmlDoclet.optionLength(option);
    }
   
    public static boolean start(RootDoc root) {
        return htmlDoclet.start(root);
    }
   
    public static boolean validOptions(String[][] options,
                                   DocErrorReporter reporter) {
        return htmlDoclet.validOptions(options, reporter);
    }

    public static LanguageVersion languageVersion() {
      return htmlDoclet.languageVersion();
    }
   
}

I can't see how I can change this to only output methods with the @myTag taglet.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Java

From novice to tech pro — start learning today.