Когда JaxbContext
запускается, он выполняет большое количество операций отражения, чтобы предварительно кэшировать весь материал, который ему понадобится позже. Это сделано из соображений производительности. Я не уверен, что именно он делает, но я ожидаю, что он будет выполнять какую-то логику генерации классов во время выполнения, так как это будет быстрее во время выполнения, чем необработанное отражение.
Интересно, что вы можете отключить это поведение, установив недокументированное системное свойство, которое улучшает запуск контекста за счет производительности во время выполнения.
edit: Я должен подчеркнуть, что это то, что эталонная реализация Sun JAXB делает под прикрытием, это не часть спецификации JAXB. Другие реализации могут делать все, что пожелают.