Bug 92201 - iajc ant task for 1.5.0M2 throws compiler error and ajcore dump
Summary: iajc ant task for 1.5.0M2 throws compiler error and ajcore dump
Status: RESOLVED FIXED
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: 1.5.0M2   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 1.5.0 M4   Edit
Assignee: Andrew Clement CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-04-21 07:05 EDT by David Wong CLA
Modified: 2005-09-23 01:38 EDT (History)
0 users

See Also:


Attachments
core dump file (28.38 KB, text/plain)
2005-04-21 07:07 EDT, David Wong CLA
no flags Details
ajcore dump file from cmdline compiler (9.92 KB, text/plain)
2005-04-24 04:24 EDT, David Wong CLA
no flags Details
IboValidationAspect.java (2.41 KB, text/plain)
2005-04-27 21:10 EDT, David Wong CLA
no flags Details
TraceAspect.java (577 bytes, text/plain)
2005-04-27 21:10 EDT, David Wong CLA
no flags Details
BaseTraceAspect.java (1.32 KB, application/octet-stream)
2005-05-17 00:46 EDT, David Wong CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description David Wong CLA 2005-04-21 07:05:21 EDT
Hi,
I'm getting the following error msg and an ajcore dump file when trying to run
the ant iajc task using aspectj 1.5.0M2.

This same script ran fine with version 1.2.1. I tried running under several
JDK's with the same result.

Ant version: 1.6.2
JDK's tried:
SUN 1.4.2_08
SUN 1.5.0_02
IBM 1.4.2 build 20041028

Ant script 
**********
<taskdef resource="org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties">
</taskdef>

<target name="compile" depends="xdoclet">
<mkdir dir="${basedir}/target/classes"/>
<iajc destdir="${basedir}/target/classes"
      classpathref="classpath"
      deprecation="true"
      debug="true">
<src path="${basedir}/target/src"/>
<src path="${basedir}/src/java"/>
<src path="${basedir}/src/aspect"/>
<src path="${basedir}/${xdoclet.gen.dir}"/>
</iajc>
</target>

Ant output
**********
compile:
     [iajc]
C:\data\test\andromda\ags\hibernate\ejb\src\aspect\com\amway\validation\IboValidationAspect.java
[error] Internal compiler error
     [iajc] org.aspectj.weaver.BCException: malformed
org.aspectj.weaver.PointcutDeclaration attribute java.io.EOFException
     [iajc] 	at org.aspectj.weaver.AjAttribute.read(AjAttribute.java:121)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelAttributes.readAjAttributes(BcelAttributes.java:42)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelObjectType.unpackAspectAttributes(BcelObjectType.java:173)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelObjectType.<init>(BcelObjectType.java:92)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelWorld.makeBcelObjectType(BcelWorld.java:213)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelWorld.resolveObjectType(BcelWorld.java:208)
     [iajc] 	at org.aspectj.weaver.World.resolveObjectType(World.java:150)
     [iajc] 	at org.aspectj.weaver.World.resolve(World.java:129)
     [iajc] 	at org.aspectj.weaver.World.resolve(World.java:108)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.EclipseFactory.fromEclipse(EclipseFactory.java:113)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.EclipseSourceType.getSuperclass(EclipseSourceType.java:80)
     [iajc] 	at
org.aspectj.weaver.ResolvedTypeX$Name.getSuperclass(ResolvedTypeX.java:765)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.checkSpec(AspectDeclaration.java:130)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.buildInterTypeAndPerClause(AspectDeclaration.java:960)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.buildInterTypeAndPerClause(AjLookupEnvironment.java:303)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.completeTypeBindings(AjLookupEnvironment.java:119)
     [iajc] 	at
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:331)
     [iajc] 	at
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:348)
     [iajc] 	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:683)
     [iajc] 	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild(AjBuildManager.java:168)
     [iajc] 	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:102)
     [iajc] 	at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:109)
     [iajc] 	at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60)
     [iajc] 	at org.aspectj.tools.ajc.Main.run(Main.java:291)
     [iajc] 	at org.aspectj.tools.ajc.Main.runMain(Main.java:227)
     [iajc] 	at
org.aspectj.tools.ant.taskdefs.AjcTask.executeInSameVM(AjcTask.java:1195)
     [iajc] 	at org.aspectj.tools.ant.taskdefs.AjcTask.execute(AjcTask.java:985)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:106)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:106)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.Project.executeTargets(Project.java:1062)
     [iajc] 	at org.apache.tools.ant.Main.runBuild(Main.java:673)
     [iajc] 	at org.apache.tools.ant.Main.startAnt(Main.java:188)
     [iajc] 	at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
     [iajc] 	at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)

     [iajc] (no source information available)
     [iajc] ABORT
     [iajc] 	
     [iajc] Exception thrown from AspectJ 1.5.0M2

     [iajc] This might be logged as a bug already -- find current bugs at
     [iajc]  
http://bugs.eclipse.org/bugs/buglist.cgi?product=AspectJ&component=Compiler

     [iajc] Bugs for exceptions thrown have titles File:line from the top stack, 
     [iajc] e.g., "SomeFile.java:243"

     [iajc] If you don't find the exception below in a bug, please add a new bug
     [iajc] at http://bugs.eclipse.org/bugs/enter_bug.cgi?product=AspectJ
     [iajc] To make the bug a priority, please include a test program
     [iajc] that can reproduce this exception.
     [iajc] malformed org.aspectj.weaver.PointcutDeclaration attribute
java.io.EOFException
     [iajc] malformed org.aspectj.weaver.PointcutDeclaration attribute
java.io.EOFException
     [iajc] org.aspectj.weaver.BCException: malformed
org.aspectj.weaver.PointcutDeclaration attribute java.io.EOFException
     [iajc] 	at org.aspectj.weaver.AjAttribute.read(AjAttribute.java:121)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelAttributes.readAjAttributes(BcelAttributes.java:42)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelObjectType.unpackAspectAttributes(BcelObjectType.java:173)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelObjectType.<init>(BcelObjectType.java:92)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelWorld.makeBcelObjectType(BcelWorld.java:213)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelWorld.resolveObjectType(BcelWorld.java:208)
     [iajc] 	at org.aspectj.weaver.World.resolveObjectType(World.java:150)
     [iajc] 	at org.aspectj.weaver.World.resolve(World.java:129)
     [iajc] 	at org.aspectj.weaver.World.resolve(World.java:108)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.EclipseFactory.fromEclipse(EclipseFactory.java:113)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.EclipseSourceType.getSuperclass(EclipseSourceType.java:80)
     [iajc] 	at
org.aspectj.weaver.ResolvedTypeX$Name.getSuperclass(ResolvedTypeX.java:765)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.checkSpec(AspectDeclaration.java:130)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.buildInterTypeAndPerClause(AspectDeclaration.java:960)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.buildInterTypeAndPerClause(AjLookupEnvironment.java:303)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.completeTypeBindings(AjLookupEnvironment.java:119)
     [iajc] 	at
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:331)
     [iajc] 	at
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:348)
     [iajc] 	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:683)
     [iajc] 	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild(AjBuildManager.java:168)
     [iajc] 	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:102)
     [iajc] 	at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:109)
     [iajc] 	at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60)
     [iajc] 	at org.aspectj.tools.ajc.Main.run(Main.java:291)
     [iajc] 	at org.aspectj.tools.ajc.Main.runMain(Main.java:227)
     [iajc] 	at
org.aspectj.tools.ant.taskdefs.AjcTask.executeInSameVM(AjcTask.java:1195)
     [iajc] 	at org.aspectj.tools.ant.taskdefs.AjcTask.execute(AjcTask.java:985)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:106)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:106)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.Project.executeTargets(Project.java:1062)
     [iajc] 	at org.apache.tools.ant.Main.runBuild(Main.java:673)
     [iajc] 	at org.apache.tools.ant.Main.startAnt(Main.java:188)
     [iajc] 	at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
     [iajc] 	at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)

     [iajc] MessageHolder:  (1 error)  (1 abort) 
     [iajc] [error   0]: error at (no source information available)
     [iajc]
C:\data\test\andromda\ags\hibernate\ejb\src\aspect\com\amway\validation\IboValidationAspect.java:0::0
Internal compiler error
     [iajc] org.aspectj.weaver.BCException: malformed
org.aspectj.weaver.PointcutDeclaration attribute java.io.EOFException
     [iajc] 	at org.aspectj.weaver.AjAttribute.read(AjAttribute.java:121)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelAttributes.readAjAttributes(BcelAttributes.java:42)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelObjectType.unpackAspectAttributes(BcelObjectType.java:173)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelObjectType.<init>(BcelObjectType.java:92)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelWorld.makeBcelObjectType(BcelWorld.java:213)
     [iajc] 	at
org.aspectj.weaver.bcel.BcelWorld.resolveObjectType(BcelWorld.java:208)
     [iajc] 	at org.aspectj.weaver.World.resolveObjectType(World.java:150)
     [iajc] 	at org.aspectj.weaver.World.resolve(World.java:129)
     [iajc] 	at org.aspectj.weaver.World.resolve(World.java:108)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.EclipseFactory.fromEclipse(EclipseFactory.java:113)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.EclipseSourceType.getSuperclass(EclipseSourceType.java:80)
     [iajc] 	at
org.aspectj.weaver.ResolvedTypeX$Name.getSuperclass(ResolvedTypeX.java:765)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.checkSpec(AspectDeclaration.java:130)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.buildInterTypeAndPerClause(AspectDeclaration.java:960)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.buildInterTypeAndPerClause(AjLookupEnvironment.java:303)
     [iajc] 	at
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.completeTypeBindings(AjLookupEnvironment.java:119)
     [iajc] 	at
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:331)
     [iajc] 	at
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:348)
     [iajc] 	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:683)
     [iajc] 	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild(AjBuildManager.java:168)
     [iajc] 	at
org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:102)
     [iajc] 	at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:109)
     [iajc] 	at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60)
     [iajc] 	at org.aspectj.tools.ajc.Main.run(Main.java:291)
     [iajc] 	at org.aspectj.tools.ajc.Main.runMain(Main.java:227)
     [iajc] 	at
org.aspectj.tools.ant.taskdefs.AjcTask.executeInSameVM(AjcTask.java:1195)
     [iajc] 	at org.aspectj.tools.ant.taskdefs.AjcTask.execute(AjcTask.java:985)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:106)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:386)
     [iajc] 	at
org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:106)
     [iajc] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
     [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:341)
     [iajc] 	at org.apache.tools.ant.Target.performTasks(Target.java:369)
     [iajc] 	at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
     [iajc] 	at org.apache.tools.ant.Project.executeTargets(Project.java:1062)
     [iajc] 	at org.apache.tools.ant.Main.runBuild(Main.java:673)
     [iajc] 	at org.apache.tools.ant.Main.startAnt(Main.java:188)
     [iajc] 	at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
     [iajc] 	at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
Comment 1 David Wong CLA 2005-04-21 07:07:41 EDT
Created attachment 20179 [details]
core dump file
Comment 2 Andrew Clement CLA 2005-04-21 08:11:11 EDT
This is due to one of the inputs for the task having built with an old version
(1.2.0?) of AspectJ - can you rebuild the inputs to the compile task?  Possibly
this library:

C:\data\test\andromda\ags\lib\aspectjlib.jar

that I see is referenced on the classpath?

We added support for versioning of attributes (which gets round this problem)
only recently but couldn't do anything for the 1.2.0 version of AJ.
Comment 3 David Wong CLA 2005-04-21 12:34:10 EDT
All the aspectj*.jar are from the 1.5.0M2 download (dated April 7), I don't
think that 1.2.1 had aspectjlib.jar anyway. I basically deleted all the
1.2.1 jars and replaced them with the 1.5.0 ones both in the application
classpath (C:\data\test\andromda\ags\lib\) and in the lib folder of the ant
installation.

Should I be doing a custom build from cvs or using a later developmental
build rather than relying on the M2 download?
Comment 4 Andrew Clement CLA 2005-04-22 05:31:20 EDT
aspectjlib is the aspects library we are working on - you can completely ignore
that.  You don't need to work with a dev build of AspectJ - 1.5.0M2 is fine.

I still think the problem will be that something on the classpath includes AJ
code and yet it hasn't been rebuilt with a recent compiler.  It won't be enough
just to put the new aspectj libraries on the classpath for the iajc task you are
running - the error indicates that one of the binaries on the classpath itself
was built with an old version of AspectJ and needs rebuilding.

C:\data\test\andromda\ags\hibernate\ejb\src\aspect\com\amway\validation\IboValidationAspect.java

Does this first file listed in the error message refer to a pointcut in some
other file on the classpath?
Comment 5 Wes Isberg CLA 2005-04-22 06:43:41 EDT
You might try running in forked mode with forkclasspath, in case you're picking
up the wrong compiler or some supertype.  It doesn't make sense that you'd be
resolving old binaries since you didn't specify any.  You might also try using
sourceroots rather than src.  Even better, use the command-line compiler to
verify that it's not a compiler-deployment issue.

<iajc destdir="${basedir}/target/classes"
      fork="true"
      forkclasspath="todo"
      classpathref="classpath"
      deprecation="true"
      debug="true">
  <sourceroots>
    <pathelement location="${basedir}/target/src"/>
    <pathelement location="${basedir}/src/java"/>
    <pathelement location="${basedir}/src/aspect"/>
    <pathelement location="${basedir}/${xdoclet.gen.dir}"/>
  </sourceroots>
</iajc>
Comment 6 David Wong CLA 2005-04-24 04:24:01 EDT
Created attachment 20276 [details]
ajcore dump file from cmdline compiler
Comment 7 David Wong CLA 2005-04-24 04:29:02 EDT
It seems it is a compiler deployment problem, I ran the commandline compiler and
got the same problem. It also did not seem to matter which aspect file was being
compiled.

Cmdline
*******
ajc -verbose -sourceroots target/src;src/java;src/aspect -classpath
../../lib/aspectjrt.jar;../../lib/hibernate-2.1.8.jar;../../lib/commons-logging-1.0.4.jar;../../lib/log4j-1.2.8.jar;../../lib/dwlogging-0.1.jar;../../common/target/ags-ibo-common-0.3.jar

I may have to leave this for now, until I'm a bit more familiar with 1.5
migration and setup. Thank you for all your help so far, appreciate it.
Comment 8 Andrew Clement CLA 2005-04-26 09:11:53 EDT
Is
C:\data\test\andromda\ags\hibernate\ejb\src\aspect\com\amway\validation\IboValidationAspect.java
a concrete sub-aspect of some super aspect?  Is there any way you can send the
source to me (either attaching it or emailing it directly?).  if not, can you
confirm the kind of pointcuts used in IboValidationAspect - are they all defined
within that file or does it refer to pointcuts in other files (either an
entirely separate type or the super type?).
Comment 9 David Wong CLA 2005-04-27 21:10:14 EDT
Created attachment 20426 [details]
IboValidationAspect.java
Comment 10 David Wong CLA 2005-04-27 21:10:36 EDT
Created attachment 20427 [details]
TraceAspect.java
Comment 11 David Wong CLA 2005-04-27 21:13:14 EDT
I seem to get the same problem with all my aspect files. I've attached 
IboValidationAspect.java which doesn't have aspect inheritance and a simple 
TraceAspect.java which does - both of these and others all produce the error.
Comment 12 Wes Isberg CLA 2005-04-27 21:17:31 EDT
Reassigning per comment 7 (also in command-line compiler), since Andy seems to
be working on it.
Comment 13 Andrew Clement CLA 2005-04-28 04:24:36 EDT
Thanks for the attachments, where is BaseTraceAspect defined?  Is it compiled
from source in the same compile step as everything else?  Or is it found in a
.jar on the classpath?
Comment 14 David Wong CLA 2005-04-28 20:41:11 EDT
BaseTraceAspect is in one of the jar files, it has an abstract pointcut.
Comment 15 Andrew Clement CLA 2005-04-29 03:57:05 EDT
Was the jar file containing BaseTraceAspect built with 1.5.0M2 of AspectJ or an
earlier version?
Comment 16 David Wong CLA 2005-05-01 22:04:04 EDT
The jar file containing BaseTraceAspect were from a previous project and were 
built with 1.2.1. I managed to compile when I removed them from the build 
process so they were the cause of the problem.

I'll have to make sure that I recompile all utility jars containing aspects in 
the future.
Thank you for your help
Comment 17 Andrew Clement CLA 2005-05-04 11:19:41 EDT
I wouldn't expect AspectJ 1.5.0 to understand a jar previously built with
AspectJ1.2.0 - but I *would* expect it to understand a jar previously built with
AspectJ1.2.1, so I'm a little concerned by your findings.  Is there any way you
could attach the BaseTraceAspect to this bug report so I could take a look at
the kind of pointcuts it includes and what might have broken 1.5.0's ability to
read it in?
thanks.
Comment 18 David Wong CLA 2005-05-04 21:30:45 EDT
Hi Andy, I'm currently overseas in japan so don't have access to some code. 
When I return to Australia, I will double check the code and aspectj version 
for you.
Comment 19 David Wong CLA 2005-05-17 00:46:52 EDT
Created attachment 21246 [details]
BaseTraceAspect.java

BaseTraceAspect.java - was built with AspectJ 1.2.1
Comment 20 Adrian Colyer CLA 2005-08-26 11:52:01 EDT
for M4
Comment 21 Andrew Clement CLA 2005-09-12 09:51:21 EDT
Ok, now the horror of the generics is done and we've released AspectJ 1.5.0M3,
I'm taking a look at this bug.  I recently overhauled the version-to-version
support in AJ so that in more situations we can cope with a recent version of
AspectJ (1.5.0) attempting to process old AspectJ code (either 1.2.0/1.2.1) -
and this bug seems related to problems in this area.  I've looked at the source
code David attached and can't see anything 'unusual' that my new version code
should have problems with.

So, given that I believe David is now in a working state and the version
management code has been improved since this was raised, I'm proposing to close
this bug.
Comment 22 Andrew Clement CLA 2005-09-13 15:20:38 EDT
Aha!  I fixed two bugs today related to supporting 1.2.1 built jars - and
re-examining the aspect here, I can see why it failed and so I *have* fixed this
problem too.

The problem is that the abstract aspect has this pointcut:

    protected abstract pointcut loggedOperations();

This gets serialized into an attribute in the aspect class file.  Because it has
'no body', in 1.2.1 we gave it an 'id' of 20 in the attribute.

During the course of 1.5 development we have added a bunch of IDs for new
pointcut kinds (@args,@annotation, etc, etc).  We mistakenly inserted those
before before the 'no body' id 20 and just 'moved' the 'no body' id to 40.  I
can see why this happened because the name given to the value 20 was misleading
- indicating it was meant to be the uppermost possible value - rather than a
specific value intended to mean 'the empty pointcut declaration'.  Anyway - in
1.5 world we were seeing '20' when reading in the 1.2.1 pointcut attribute and
thinking it meant '@args' so we then tried to deserialize an @args pointcut.  Of
course there isn't anything left to deserialize as '20' was meant to represent
that there is nothing further to read - so we blow up EOF.

My fix is to make 20 represent the empty definition as before and I've shuffled
the other values as appropriate - this does mean anyone who has compiled code
using AspectJ5 must do so again after this change (to make sure they get the
right values) - but this is the *right* fix as it means we can correctly process
1.2.1 built class files again :)  And we don't guarantee the serialized form is
fixed before delivering the final version of AspectJ 5.

I checked the fix in a little while ago - will close this bug when a dev build
is available.
Comment 23 Andrew Clement CLA 2005-09-14 03:07:32 EDT
Fix available in latest dev build.
Comment 24 hari CLA 2005-09-20 08:57:49 EDT
(In reply to comment #23)
> Fix available in latest dev build.

I'm also facing the similar kind of error in Sun OS5.8. I'm using aspectj1.2.1.
Is the fix availble for 1.2.1.

regards,
Hari
Comment 25 Andrew Clement CLA 2005-09-21 03:16:40 EDT
As a general rule, we don't backport any fixes to 1.2.1.  From memory there were
two fixes I did to version support recently:

- fixed it so we don't default into thinking a file is AspectJ5 (or the
'current' level of the compiler being used) if it has no version in, we now
default to thinking its AspectJ pre 1.2.1
- fixed the incorrect serialized form for pointcuts.

The first fix will only make a difference if you are asking AspectJ to process a
very old jar (built with pre 1.2.1).  In this case it is feasible that the fix
for AJ5 could be backported to 1.2.1 to get it to work.

The second fix will only make a difference if you give an old jar to AspectJ5.

On sun, is your problem that Aj1.2.1 can't process an aj1.2.1 built jar? or is
it that it can't process a 1.2.0 built jar?

Is it not possible for you to use AspectJ5 on SUN?  You don't need a Java5 in
order to run the AJ5 compiler, you only need Java5 to exploit Java5 features.

It could be a new bug I'm not aware of...
Comment 26 hari CLA 2005-09-22 00:38:40 EDT
HI Andy,
Thanx for the response.We r using AspectJ1.2.1 as a part of our application
We are yet to test our application with AspectJ1.5 . I'll just explain the 
error tht we've got while compiling an aspect,

Internal compiler error
org.aspectj.weaver.BCException: malformed 
org.aspectj.weaver.PointcutDeclaration attribute java.io.EOFException
	at org.aspectj.weaver.AjAttribute.read(AjAttribute.java:121)
	at org.aspectj.weaver.bcel.BcelAttributes.readAjAttributes
(BcelAttributes.java:59)
	at org.aspectj.weaver.bcel.BcelObjectType.unpackAspectAttributes
(BcelObjectType.java:249)
	at org.aspectj.weaver.bcel.BcelObjectType.<init>
(BcelObjectType.java:119)
	at org.aspectj.weaver.bcel.BcelWorld.makeBcelObjectType
(BcelWorld.java:244)
	at org.aspectj.weaver.bcel.BcelWorld.resolveDelegate
(BcelWorld.java:239)
	at org.aspectj.weaver.World.resolveToReferenceType(World.java:277)
	at org.aspectj.weaver.World.resolve(World.java:205)
	at org.aspectj.weaver.World.resolve(World.java:127)
	at org.aspectj.ajdt.internal.compiler.lookup.EclipseFactory.fromEclipse
(EclipseFactory.java:125)
	at 
org.aspectj.ajdt.internal.compiler.lookup.EclipseSourceType.getSuperclass
(EclipseSourceType.java:115)
	at org.aspectj.weaver.ReferenceType.getSuperclass
(ReferenceType.java:443)
	at org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.checkSpec
(AspectDeclaration.java:170)
	at 
org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.buildInterTypeAndPerCl
ause(AspectDeclaration.java:1045)
	at 
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.buildInterTypeAnd
PerClause(AjLookupEnvironment.java:312)
	at 
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.completeTypeBindi
ngs(AjLookupEnvironment.java:128)
	at 
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.beginToCompile
(Compiler.java:301)
	at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile
(Compiler.java:315)
	at 
org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation
(AjBuildManager.java:728)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild
(AjBuildManager.java:206)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild
(AjBuildManager.java:140)
	at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:112)
	at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60)
	at org.aspectj.tools.ajc.Main.run(Main.java:324)
	at org.aspectj.tools.ajc.Main.runMain(Main.java:238)
	at org.aspectj.tools.ajc.Main.main(Main.java:82)

abort ABORT -- (BCException) malformed org.aspectj.weaver.PointcutDeclaration 
attribute java.io.EOFException
malformed org.aspectj.weaver.PointcutDeclaration attribute java.io.EOFException
org.aspectj.weaver.BCException: malformed 
org.aspectj.weaver.PointcutDeclaration attribute java.io.EOFException
	at org.aspectj.weaver.AjAttribute.read(AjAttribute.java:121)
	at org.aspectj.weaver.bcel.BcelAttributes.readAjAttributes
(BcelAttributes.java:59)
	at org.aspectj.weaver.bcel.BcelObjectType.unpackAspectAttributes
(BcelObjectType.java:249)
	at org.aspectj.weaver.bcel.BcelObjectType.<init>
(BcelObjectType.java:119)
	at org.aspectj.weaver.bcel.BcelWorld.makeBcelObjectType
(BcelWorld.java:244)
	at org.aspectj.weaver.bcel.BcelWorld.resolveDelegate
(BcelWorld.java:239)
	at org.aspectj.weaver.World.resolveToReferenceType(World.java:277)
	at org.aspectj.weaver.World.resolve(World.java:205)
	at org.aspectj.weaver.World.resolve(World.java:127)
	at org.aspectj.ajdt.internal.compiler.lookup.EclipseFactory.fromEclipse
(EclipseFactory.java:125)
	at 
org.aspectj.ajdt.internal.compiler.lookup.EclipseSourceType.getSuperclass
(EclipseSourceType.java:115)
	at org.aspectj.weaver.ReferenceType.getSuperclass
(ReferenceType.java:443)
	at org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.checkSpec
(AspectDeclaration.java:170)
	at 
org.aspectj.ajdt.internal.compiler.ast.AspectDeclaration.buildInterTypeAndPerCl
ause(AspectDeclaration.java:1045)
	at 
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.buildInterTypeAnd
PerClause(AjLookupEnvironment.java:312)
	at 
org.aspectj.ajdt.internal.compiler.lookup.AjLookupEnvironment.completeTypeBindi
ngs(AjLookupEnvironment.java:128)
	at 
org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.beginToCompile
(Compiler.java:301)
	at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile
(Compiler.java:315)
	at 
org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation
(AjBuildManager.java:728)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild
(AjBuildManager.java:206)
	at org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild
(AjBuildManager.java:140)
	at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:112)
	at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60)
	at org.aspectj.tools.ajc.Main.run(Main.java:324)
	at org.aspectj.tools.ajc.Main.runMain(Main.java:238)
	at org.aspectj.tools.ajc.Main.main(Main.java:82)

Our aspect is very simple.It has only one parameter

execution (void orderentry.FMRServletBase.initializeRequestContext
(com.iplanet.jato.RequestContext))
;

We never faced any such kind of erros when we compiled in windows environment.

This is the environment whr we compiled the aspect

JDK Version:            1.4.2_05
OS version:             Solaris 8
AspectJ Version:        AspectJ1.2.1

Can u just let us know how should proceed in this error.

regards
Hari..

Comment 27 hari CLA 2005-09-23 01:38:44 EDT
Is thr any update on the bugs tht i've sent guyz