Sto usando javac da tools.jar (ad esempio JavaCompiler
) per analizzare i file java. Analizzo le fonti utilizzando l'implementazione di TreePathScanner
. Finora tutto sembra a posto, dato che posso analizzare importazioni, nome pacchetto, nome classe, nome metodo, istruzioni ...Come leggere i commenti in linea dal file java usando javac tools parser?
Ma ho problemi con inline commenti - Non posso semplicemente farli apparire nel creato l'albero AST, o visitato loro. Tuttavia, sono in grado di leggere javadoc commenti per classi, metodi ecc., Ma senza commenti in linea.
Come leggere i commenti in linea nel modo migliore? Sto guardando il codice sorgente di netbeans (dato che sta usando javac anche per l'analisi), ma non riesco a trovare facilmente nulla a riguardo.
La mia soluzione disperata userebbe la posizione delle istruzioni del file sorgente e quindi analizzerò manualmente per commentare tutto ciò che è tra due istruzioni. O cosa simile, ma tra due nodi dell'albero.
Qualcuno sa una soluzione migliore? Grazie!
Vedo che com.sun.tools.javac.main.JavaCompiler ha un flag keepComments impostato su false per impostazione predefinita. E 'quello che stai cercando di usare? Hai provato a cambiarlo? – jdb
sì, avevo già impostato questo valore, non ho notato alcuna differenza. – igr