Me gustaría poder convertir mediante programación los comentarios de Javadoc (como los del código generado de LWJGL ) a otros formatos (como Markdown ). Esto me permitiría hacer cosas como generar automáticamente un envoltorio Clojure idiomático para LWJGL con cadenas de documentos legibles por humanos.
Puedo seleccionar los comentarios de Javadoc de un archivo fuente usando JavaParser , pero ahí es donde me quedo atascado. Las respuestas a estas dos preguntas de Stack Overflow de 2011 y 2013 recomiendan usar la API de Doclet , pero de acuerdo con la respuesta a esta pregunta de 2015:
Las clases en los
com.sun.tools.*
paquetes deben tratarse como API internas. Hay advertencias claras en la documentación de Java que dicen que no debe escribir código contra estas API.Por ejemplo:
- Por qué los desarrolladores no deberían escribir programas que llamen paquetes 'sun'
- Cerrar las API cerradas
En Java 8, el encabezado de la clase que su código intenta usar dice:
Esto NO es parte de ninguna API compatible. Si escribe código que depende de esto, lo hace bajo su propio riesgo. Este código y sus interfaces internas están sujetos a cambios o eliminación sin previo aviso.
(¡La negrita está en el original!)
No dijo eso en Java 7 (¡ay!) De hecho, hay versiones de las preguntas frecuentes de Javadoc que parecen alentar a las personas a reutilizar las clases de doclet estándar. Desafortunadamente, Oracle decidió cerrar estas clases y también realizó algunos cambios importantes en la API que refuerzan esto, ya sea que esa sea la intención de los cambios o no.
Una búsqueda en Google de "analizador Javadoc" no arrojó nada más que Doclet. Dado que Doclet no es compatible, me parece que la mejor manera de resolver mi problema sería escribir una biblioteca de análisis de Javadoc yo mismo. Sin embargo, me parece inverosímil que tal cosa no exista ya. No soy un experto en Javadoc; tal vez no haya un "formato Javadoc" estándar y la pregunta "¿cómo puedo analizar un Javadoc" es incorrecta ?
Me gustaría una biblioteca de Java que
"/** foo */"
) y devuelve algún tipo de árbol de análisistools.jar
)¿Existe una biblioteca de análisis de Javadoc compatible o debo escribir una yo mismo?
Hay un proyecto doc2java que admite esto:
También hay un motor de búsqueda que puede albergar JavaDocs y hacer que se puedan buscar.
Referencias
usuario207421
sun.*
paquetes, sobre los que hay una conocida advertencia, con loscom.sun.*
paquetes, sobre los que no la hay. Sería imposible escribir un programa JNDI sin usarcom.sun.*
, por ejemplo.sam estep
tools.jar
que incluyecom.sun.javadoc.*
, "no se puede distribuir". Entonces, ¿cómo puedo distribuir una aplicación que depende decom.sun.javadoc.*
? ¿O no es ese el paquete que necesitaría para analizar los comentarios de Javadoc mediante programación?EJP
sam estep
EJP
sam estep
Ira Baxter
sam estep
Ira Baxter
sam estep