<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="Generator" content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.EmailStyle19
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style></head><body lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word"><div class="WordSection1"><p class="MsoNormal">I am using ClassFileTransformer.transform() to instrument class files as they are loaded. Within my transform method I call</p><p class="MsoNormal"> </p><p class="MsoNormal">byte[] newBytes = classFile.build(classModel.thisClass().asSymbol(),</p><p class="MsoNormal"> classBuilder -> modifyClass(classBuilder, classModel, loader));</p><p class="MsoNormal"> </p><p class="MsoNormal">where modifyClass does all the instrumentation.</p><p class="MsoNormal"> </p><p class="MsoNormal">The problem is some where inside of classFile.build() the class is actually being loaded! Thus, when I return newBytes from the transform method I get an error ‘attempted duplicate abstract class definition’. I have verified that the class has not be loaded prior to the return from modifyClass().</p><p class="MsoNormal"> </p><p class="MsoNormal">What is going on?</p><p class="MsoNormal"> </p><p class="MsoNormal">Thank you,</p><p class="MsoNormal">Mark</p></div></body></html>