Ajouter des Doclet options

taiji_n Messages postés 13 Statut Membre -  
KX Messages postés 19031 Statut Modérateur -

Bonjour à tous

Je dois créer un doclet en Java dans lequel je dois créer deux options, cependant je ne trouve pas comment faire

Merci par avance

2 réponses

  1. ozone_ Messages postés 1823 Statut Membre 511
     

    Bonjour!

    Pour créer un doclet en Java avec des options, vous pouvez suivre les étapes suivantes :

    1. Créez une classe qui implémente l'interface `com.sun.javadoc.Doclet`. Cette classe sera votre doclet.

    2. Ajoutez les options que vous souhaitez prendre en charge dans la méthode `optionLength(String option)` de votre doclet. Cette méthode renvoie le nombre d'arguments pour chaque option. Par exemple, si vous avez une option `-foo` qui ne prend pas d'argument et une option `-bar` qui prend un argument, vous pouvez implémenter cette méthode comme suit :

    public static int optionLength(String option) {
        switch (option) {
            case "-foo":
                return 0;
            case "-bar":
                return 1;
            default:
                return 0;
        }
    }

    3. Récupérez les arguments des options dans la méthode `start(RootDoc root)`. Cette méthode est appelée par Javadoc au début du traitement de la documentation. Vous pouvez utiliser la méthode `getRootDoc()` pour récupérer la racine de la documentation, puis utiliser la méthode `options()` pour récupérer les options passées à votre doclet. Par exemple :

    public static boolean start(RootDoc root) {
        String[][] options = root.options();
        for (int i = 0; i < options.length; ++i) {
            String[] opt = options[i];
            switch (opt[0]) {
                case "-foo":
                    // Traiter l'option -foo
                    break;
                case "-bar":
                    String arg = opt[1];
                    // Traiter l'option -bar avec l'argument arg
                    break;
                default:
                    // Ignorer les options inconnues
                    break;
            }
        }
        // ...
    }

    4. Compilez votre doclet en utilisant `javac` et spécifiez-le à Javadoc à l'aide de l'option `-doclet`.

    5. Exécutez Javadoc avec votre doclet et vos options personnalisées en utilisant les options standard de Javadoc, comme `-d` pour spécifier le répertoire de destination pour les fichiers de documentation.

    Voici un exemple complet de doclet Java avec deux options :

    import com.sun.javadoc.*;
    
    public class MyDoclet implements com.sun.javadoc.Doclet {
        public static int optionLength(String option) {
            switch (option) {
                case "-foo":
                    return 0;
                case "-bar":
                    return 1;
                default:
                    return 0;
            }
        }
    
        public static boolean start(RootDoc root) {
            String[][] options = root.options();
            for (int i = 0; i < options.length; ++i) {
                String[] opt = options[i];
                switch (opt[0]) {
                    case "-foo":
                        System.out.println("Option -foo activée");
                        break;
                    case "-bar":
                        String arg = opt[1];
                        System.out.println("Option -bar activée avec argument : " + arg);
                        break;
                    default:
                        // Ignorer les options inconnues
                        break;
                }
            }
            // ...
            return true;
        }
    
        public static void main(String[] args) {
            com.sun.tools.javadoc.Main.execute("MyDoclet", args);
        }
    }

    Vous pouvez maintenant compiler et exécuter ce doclet en utilisant les commandes suivantes :

    javac MyDoclet.java
    javadoc -doclet MyDoclet -foo -bar baz -d ./

    Source: ChatGPT


    0