Sto provando a creare un generatore Javadoc personalizzato utilizzando Doclet
, ma sto riscontrando alcuni problemi.Problemi con la generazione di javadoc personalizzati; 'can not find doclet'
Sto seguendo the official documentation e inizialmente ho avuto problemi con l'inclusione del file tools.jar
nel mio progetto, ma sono riuscito a risolvere il problema.
Il mio problema ora è che dopo l'esecuzione di questo comando ...
javadoc -doclet ListClass -docletpath . MyClass.java
... Sto ottenendo il messaggio ...
javadoc: errore - Impossibile trovare doclet classe listclass
Come ho detto, ho seguito principalmente i tutorial dalla documentazione ufficiale, ma qui è il mio codice di riferimento.
ListClass.java
:
import com.sun.javadoc.*;
public class ListClass {
public static boolean start(RootDoc root) {
ClassDoc[] classes = root.classes();
for (int i = 0; i < classes.length; ++i) {
System.out.println(classes[i]);
}
return true;
}
}
E MyClass.java
:
/**
* Documentation for my class
*/
public class MyClass {
public static void main(String[] args) {
}
/**
* Documentation for my static void method
*
* @param param This is the parameter it takes in
*/
public static void myStaticVoidMethod(String param) {
}
}
Quindi quello che chiedo è perché sto ottenendo l'errore che ho postato sopra. Se qualcuno fosse in grado di fornire una guida più completa su come funziona Doclet
sarebbe bello.
Nota: sto utilizzando IntelliJ IDE per il mio progetto. Qui è la mia struttura di directory:
- .idea
- ...
- fuori
- ...
- src
- ListClass.java
- MyClass.java
- JavadocGenerator.iml
Grazie. Esecuzione di 'javac -d. ListClass.java -cp C:/Programmi/Java/jdk1.8.0_66/lib/tools.jar' mi fornisce 'javac: file non trovato: ListClass.java', quindi l'ho cambiato in' ... src/ListClass .java ... '(vedi la mia domanda aggiornata con la gerarchia della directory). Ora eseguendo questo nuovo comando (con 'src /') mi dà l'errore 'javac: invalid flag: Files/Java/jdk1.8.0_66/lib/tools.jar'. –
Sei molto vicino a quello che hai. Penso che devi solo inserire il percorso tra virgolette e assicurarti di eseguire javac e javadoc dalle directory corrette. Guarda il mio aggiornamento. – heisbrandon
Grazie - la tua risposta aggiornata ha risolto il mio problema. –