Project: AspectJ
Bug 266602 Problem with incremental itd compilation
Reported: 2009-02-28 16:09:42 | Status: resolved fixed

Reproduceable from Roo code - commenting out a field after a successful build results in this exception. The underlying cause may also apply to ITD methods (and maybe constructors). org.aspectj.weaver.BCException: Couldn't find ITD init member 'void com.springsource.petclinic.domain.Visit_Roo_Entity_Itd.ajc$interFieldInit$com_springsource_petclinic_domain_Visit_Roo_Entity_Itd$com_springsource_petclinic_domain_Visit$id(com.springsource.petclinic.domain.Visit)' on aspect com.springsource.petclinic.domain.Visit_Roo_Entity_Itd when type munging with (BcelTypeMunger ResolvedTypeMunger(Field, java.lang.Long com.springsource.petclinic.domain.Visit.id)) when weaving type com.springsource.petclinic.domain.Visit when weaving classes when weaving when incrementally building with classpath: C:\temp\petclinic\target\classes;E:/jvms/jdk1.6.0_06/jre/lib/resources.jar;E:/jvms/jdk1.6.0_06/jre/lib/rt.jar;E:/jvms/jdk1.6.0_06/jre/lib/jsse.jar;E:/jvms/jdk1.6.0_06/jre/lib/jce.jar;E:/jvms/jdk1.6.0_06/jre/lib/charsets.jar;E:/jvms/jdk1.6.0_06/jre/lib/ext/dnsns.jar;E:/jvms/jdk1.6.0_06/jre/lib/ext/localedata.jar;E:/jvms/jdk1.6.0_06/jre/lib/ext/sunjce_provider.jar;E:/jvms/jdk1.6.0_06/jre/lib/ext/sunmscapi.jar;E:/jvms/jdk1.6.0_06/jre/lib/ext/sunpkcs11.jar;C:/Users/Andy/.m2/repository/org/antlr/com.springsource.antlr/2.7.6/com.springsource.antlr-2.7.6.jar;C:/Users/Andy/.m2/repository/com/thoughtworks/xstream/com.springsource.com.thoughtworks.xstream/1.3.0/com.springsource.com.thoughtworks.xstream-1.3.0.jar;C:/Users/Andy/.m2/repository/edu/emory/mathcs/backport/com.springsource.edu.emory.mathcs.backport/3.1.0/com.springsource.edu.emory.mathcs.backport-3.1.0.jar;C:/Users/Andy/.m2/repository/edu/oswego/cs/concurrent/com.springsource.edu.oswego.cs.dl.util.concurrent/1.3.4/com.springsource.edu.oswego.cs.dl.util.concurrent-1.3.4.jar;C:/Users/Andy/.m2/repository/org/jboss/javassist/com.springsource.javassist/3.3.0.ga/com.springsource.javassist-3.3.0.ga.jar;C:/Users/Andy/.m2/repository/javax/annotation/com.springsource.javax.annotation/1.0.0/com.springsource.javax.annotation-1.0.0.jar;C:/Users/Andy/.m2/repository/javax/persistence/com.springsource.javax.persistence/1.0.0/com.springsource.javax.persistence-1.0.0.jar;C:/Users/Andy/.m2/repository/javax/servlet/com.springsource.javax.servlet/2.4.0/com.springsource.javax.servlet-2.4.0.jar;C:/Users/Andy/.m2/repository/javax/servlet/com.springsource.javax.servlet.jsp.jstl/1.2.0/com.springsource.javax.servlet.jsp.jstl-1.2.0.jar;C:/Users/Andy/.m2/repository/javax/transaction/com.springsource.javax.transaction/1.1.0/com.springsource.javax.transaction-1.1.0.jar;C:/Users/Andy/.m2/repository/net/sourceforge/cglib/com.springsource.net.sf.cglib/2.1.3/com.springsource.net.sf.cglib-2.1.3.jar;C:/Users/Andy/.m2/repository/net/sourceforge/ehcache/com.springsource.net.sf.ehcache/1.4.1/com.springsource.net.sf.ehcache-1.4.1.jar;C:/Users/Andy/.m2/repository/net/sourceforge/jsr107cache/com.springsource.net.sf.jsr107cache/1.0.0/com.springsource.net.sf.jsr107cache-1.0.0.jar;C:/Users/Andy/.m2/repository/org/antlr/com.springsource.org.antlr/3.0.1/com.springsource.org.antlr-3.0.1.jar;C:/Users/Andy/.m2/repository/org/aopalliance/com.springsource.org.aopalliance/1.0.0/com.springsource.org.aopalliance-1.0.0.jar;C:/Users/Andy/.m2/repository/org/apache/commons/com.springsource.org.apache.commons.collections/3.2.0/com.springsource.org.apache.commons.collections-3.2.0.jar;C:/Users/Andy/.m2/repository/org/apache/commons/com.springsource.org.apache.commons.dbcp/1.2.2.osgi/com.springsource.org.apache.commons.dbcp-1.2.2.osgi.jar;C:/Users/Andy/.m2/repository/org/apache/commons/com.springsource.org.apache.commons.logging/1.1.1/com.springsource.org.apache.commons.logging-1.1.1.jar;C:/Users/Andy/.m2/repository/org/apache/commons/com.springsource.org.apache.commons.pool/1.3.0/com.springsource.org.apache.commons.pool-1.3.0.jar;C:/Users/Andy/.m2/repository/org/apache/log4j/com.springsource.org.apache.log4j/1.2.15/com.springsource.org.apache.log4j-1.2.15.jar;C:/Users/Andy/.m2/repository/org/apache/taglibs/com.springsource.org.apache.taglibs.standard/1.1.2/com.springsource.org.apache.taglibs.standard-1.1.2.jar;C:/Users/Andy/.m2/repository/org/aspectj/com.springsource.org.aspectj.runtime/1.6.2.RELEASE/com.springsource.org.aspectj.runtime-1.6.2.RELEASE.jar;C:/Users/Andy/.m2/repository/org/aspectj/com.springsource.org.aspectj.tools/1.6.2.RELEASE/com.springsource.org.aspectj.tools-1.6.2.RELEASE.jar;C:/Users/Andy/.m2/repository/org/aspectj/com.springsource.org.aspectj.weaver/1.6.2.RELEASE/com.springsource.org.aspectj.weaver-1.6.2.RELEASE.jar;C:/Users/Andy/.m2/repository/org/dom4j/com.springsource.org.dom4j/1.6.1/com.springsource.org.dom4j-1.6.1.jar;C:/Users/Andy/.m2/repository/org/hibernate/com.springsource.org.hibernate/3.2.6.ga/com.springsource.org.hibernate-3.2.6.ga.jar;C:/Users/Andy/.m2/repository/org/hibernate/com.springsource.org.hibernate.annotations/3.3.1.ga/com.springsource.org.hibernate.annotations-3.3.1.ga.jar;C:/Users/Andy/.m2/repository/org/hibernate/com.springsource.org.hibernate.annotations.common/3.3.0.ga/com.springsource.org.hibernate.annotations.common-3.3.0.ga.jar;C:/Users/Andy/.m2/repository/org/hibernate/com.springsource.org.hibernate.ejb/3.3.2.GA/com.springsource.org.hibernate.ejb-3.3.2.GA.jar;C:/Users/Andy/.m2/repository/org/hibernate/com.springsource.org.hibernate.validator/3.0.0.GA/com.springsource.org.hibernate.validator-3.0.0.GA.jar;C:/Users/Andy/.m2/repository/org/hsqldb/com.springsource.org.hsqldb/1.8.0.9/com.springsource.org.hsqldb-1.8.0.9.jar;C:/Users/Andy/.m2/repository/org/jboss/util/com.springsource.org.jboss.util/2.0.4.GA/com.springsource.org.jboss.util-2.0.4.GA.jar;C:/Users/Andy/.m2/repository/org/junit/com.springsource.org.junit/4.4.0/com.springsource.org.junit-4.4.0.jar;C:/Users/Andy/.m2/repository/org/objectweb/asm/com.springsource.org.objectweb.asm/2.2.3/com.springsource.org.objectweb.asm-2.2.3.jar;C:/Users/Andy/.m2/repository/org/objectweb/asm/com.springsource.org.objectweb.asm.attrs/1.5.3/com.springsource.org.objectweb.asm.attrs-1.5.3.jar;C:/Users/Andy/.m2/repository/org/objectweb/asm/com.springsource.org.objectweb.asm.commons/2.2.3/com.springsource.org.objectweb.asm.commons-2.2.3.jar;C:/Users/Andy/.m2/repository/org/xmlpull/com.springsource.org.xmlpull/1.1.3.4-O/com.springsource.org.xmlpull-1.1.3.4-O.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.aop/3.0.0.M1/org.springframework.aop-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.aspects/3.0.0.M1/org.springframework.aspects-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.beans/3.0.0.M1/org.springframework.beans-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.context/3.0.0.M1/org.springframework.context-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.core/3.0.0.M1/org.springframework.core-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.expression/3.0.0.M1/org.springframework.expression-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.jdbc/3.0.0.M1/org.springframework.jdbc-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.orm/3.0.0.M1/org.springframework.orm-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.test/3.0.0.M1/org.springframework.test-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.transaction/3.0.0.M1/org.springframework.transaction-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.web/3.0.0.M1/org.springframework.web-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/org.springframework.web.servlet/3.0.0.M1/org.springframework.web.servlet-3.0.0.M1.jar;C:/Users/Andy/.m2/repository/org/springframework/roo/roo-core/0.2.0-SNAPSHOT/roo-core-0.2.0-SNAPSHOT.jar;F:/eclipse/e342/eclipse/plugins/org.aspectj.runtime_1.6.4.20090205161900/aspectjrt.jar;f:\jvms\jdk1.6.0_06\jre\lib\ext\dnsns.jar;f:\jvms\jdk1.6.0_06\jre\lib\ext\localedata.jar;f:\jvms\jdk1.6.0_06\jre\lib\ext\sunjce_provider.jar;f:\jvms\jdk1.6.0_06\jre\lib\ext\sunmscapi.jar;f:\jvms\jdk1.6.0_06\jre\lib\ext\sunpkcs11.jar;f:\eclipse\e342\eclipse\\plugins\org.eclipse.equinox.launcher_1.0.101.R34x_v20081125.jar; at org.aspectj.weaver.bcel.BcelTypeMunger.mungeNewField(BcelTypeMunger.java:1638) at org.aspectj.weaver.bcel.BcelTypeMunger.munge(BcelTypeMunger.java:90) at org.aspectj.weaver.bcel.BcelClassWeaver.weave(BcelClassWeaver.java:441) at org.aspectj.weaver.bcel.BcelClassWeaver.weave(BcelClassWeaver.java:103) at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1732) at org.aspectj.weaver.bcel.BcelWeaver.weaveWithoutDump(BcelWeaver.java:1693) at org.aspectj.weaver.bcel.BcelWeaver.weaveAndNotify(BcelWeaver.java:1458) at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1272) at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.weaveQueuedEntries(AjPipeliningCompilerAdapter.java:435) at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.queueForWeaving(AjPipeliningCompilerAdapter.java:371) at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.afterProcessing(AjPipeliningCompilerAdapter.java:358) at org.aspectj.ajdt.internal.compiler.CompilerAdapter.ajc$after$org_aspectj_ajdt_internal_compiler_CompilerAdapter$5$6b855184(CompilerAdapter.aj:98) at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:652) at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:392) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:977) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performBuild(AjBuildManager.java:301) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.incrementalBuild(AjBuildManager.java:183) at org.aspectj.ajde.core.internal.AjdeCoreBuildManager.performBuild(AjdeCoreBuildManager.java:127) at org.aspectj.ajde.core.AjCompiler.build(AjCompiler.java:88) at org.eclipse.ajdt.core.builder.AJBuilder.build(AJBuilder.java:223) at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:633) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:170) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:201) at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:253) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:256) at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:309) at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:341) at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:140) at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:238) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

Files changed in fix:
weaver/src/org/aspectj/weaver/bcel/BcelTypeMunger.java