Я пишу обработчик аннотации и мне нужно создать экземпляр обрабатываемого класса.Как создать экземпляр класса с обработкой аннотации?
Я извлекаю документацию на основе класса и его аннотаций, и я хотел бы запустить метод из этого класса и вывести результат в сгенерированной документации.
К сожалению, когда я пытаюсь создать экземпляр, у меня есть ClassNotFoundException
, который кажется логичным для меня, поскольку обработка происходит перед раундом компиляции.
В настоящее время я пишу xml-файл, содержащий документацию, возможно, есть пост-процессор аннотации или что-то подобное?
У вас есть идеи обходной путь?
Вы можете уточнить, почему * вы пытаетесь его создать? Вы никогда не сможете создать экземпляр класса, который вы компилируете, поэтому, возможно, лучший вопрос: «Как я могу сделать X * без * создания экземпляров этих классов?» – Brian
Я хочу создать пример сообщения json, которое может быть создано аннотированной службой – poussma
Ну, у вас есть доступ к полям и их типам в вашем обработчике аннотаций (исходные метаданные). Вам не нужно иметь явные значения в вашем примере JSON, чтобы он был хорошим примером, так что, возможно, вы можете просто создать строку JSON с этой информацией? Другим вариантом может быть использование BCEL для динамического создания класса из исходных метаданных для использования в качестве временного владельца места для генерации JSON. Прошло некоторое время с тех пор, как я работал над обработчиком аннотаций, поэтому я не могу предложить многое из-за кода, извините. – Brian