java - online - ¿Cómo puedo depurar un Doclet en Eclipse?
java debugger online (3)
Estoy creando un doclet personalizado que quiero ejecutar en mi compilación Maven con el complemento Javadoc, pero ahora mismo me gustaría probar / depurar el Doclet en Eclipse. ¿Cómo puedo hacer eso?
¿Tengo que invocar javadoc programáticamente? ¿Y cómo?
Recibí un mensaje de error con @Jan contestar
Error:(13, 35) java: reference to execute is ambiguous
both method execute(java.lang.String...) in com.sun.tools.javadoc.Main and method execute(java.lang.String,java.lang.String...) in com.sun.tools.javadoc.Main match
Después de cambiar estos códigos y funciona bien.
com.sun.tools.javadoc.Main.execute(new String[]{
"-doclet", CustomDoclet.class.getName(),
"path/to/src/XXX.java"
});
Si está ejecutando JDK v1.8, es posible que deba usar el siguiente fragmento de código:
Main.execute(docletFqcn.getClass().getClassLoader(), "-doclet", docletFqcn, javaSourceFilePath);
donde docletFqcn
es el nombre de clase completamente calificado de su clase javaSourceFilePath
y javaSourceFilePath
la ubicación del archivo Java para procesar.
simplemente puede crear un método principal en su doclet y llamar (por ejemplo, vea la referencia completa de la reunión):
public class MyDoclet extends Doclet {
public static void main(String[] args) {
com.sun.tools.javadoc.Main.execute("-doclet " + MyDoclet.class.getName());
}
}
Eso también funciona con el depurador.
También es posible que tenga que agregar el parámetro -classpath que contiene todas las dependencias de jarra necesarias para analizar el código real.