Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aspectj-users] after converting and existing project to an AspectJ project Ant doesn't run

compile:
[javac] Compiling 6 source files to /root/java/ArchivedWorkspaces/AJContentServer/build [javac] /root/java/ArchivedWorkspaces/AJContentServer/src/com/ajcs/contentserver/aspects/TestAspect.java:18: 'class' or 'interface' expected
       [javac] public aspect TestAspect {
       [javac]        ^
[javac] /root/java/ArchivedWorkspaces/AJContentServer/src/com/ajcs/contentserver/aspects/SlideMapAspect.java:23: 'class' or 'interface' expected
       [javac] public aspect SlideMapAspect {
       [javac]        ^
       [javac] 2 errors
[javac] BUILD FAILED: file:/root/java/ArchivedWorkspaces/AJContentServer/build.xml:50: Compile failed; see the compiler error output for details.
Total time: 2 seconds

Ok, so I went to the archives and found a couple of entries that seemed to point in the right direction so I added the following to my build.xml

<property name="aspectjtools.jar"    	
	location="/root/java/aspectj1.1/libaspectjtools.jar"/>
<property name="aspectjrt.jar"
	location="/root/java/aspectj1.1/lib/aspectjrt.jar"/>
	
<taskdef
resource="org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties">
    <classpath>
        <pathelement path="${aspectjtools.jar}" />
    </classpath>
</taskdef>

<target name="compile_aspect" depends="init"
		description="Compiles the source code with aspects">
    <iajc destDir="${build}" classpath="${aspectjrt.jar}">
        <sourceroots>
		    <pathelement location="${src}" />
	</sourceroots>
        <classpath>
	  <pathelement path="${classpath}"/>
      	  <pathelement location="./lib/commons-httpclient-2.0-rc2.jar"/>
          <pathelement location="./lib/slide-kernel.jar"/>
	  <pathelement location="./lib/slide-webdavservlet.jar"/>
	  <pathelement location="./lib/slide-stores.jar"/>
	  <pathelement location="./lib/junit.jar"/>
	  <pathelement location="./lib/jta.jar"/>
	  <pathelement location="./lib/AJRegistries-200312190820.jar"/>
        </classpath>
    </iajc>
</target>

where the classpath elements are the same as they were before converting to aspectj and were working in the build before.

I can rebuild the project with the Project->Rebuild Project, and I can Run some JUnit tests against some of the new Aspects that I have added to the project and the Tests all run ok and have joinpoints for both call() and execution() pointcuts but nothing else.

Now running Ant compile_aspect

I get

compile_aspect:
        [iajc] ABORT
        [iajc] Exception thrown from AspectJ 1.1.1
        [iajc]
[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]
[iajc] Bugs for exceptions thrown have titles File:line from the top stack,
        [iajc] e.g., "SomeFile.java:243"
        [iajc]
[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] (class: org/aspectj/ajdt/internal/compiler/lookup/AjLookupEnvironment, method: createBinaryTypeFrom signature: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Z)Lorg/eclipse/jdt/internal/compile [iajc] (class: org/aspectj/ajdt/internal/compiler/lookup/AjLookupEnvironment, method: createBinaryTypeFrom signature: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Z)Lorg/eclipse/jdt/internal/compile [iajc] java.lang.VerifyError: (class: org/aspectj/ajdt/internal/compiler/lookup/AjLookupEnvironment, method: createBinaryTypeFrom signature: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Z)Lorg/eclipse/jdt/internal/compile [iajc] at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:352) [iajc] at org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild(AjBuildManager.java:125) [iajc] at org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:70) [iajc] at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:99) [iajc] at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:53)
        [iajc] 	at org.aspectj.tools.ajc.Main.run(Main.java:217)
        [iajc] 	at org.aspectj.tools.ajc.Main.runMain(Main.java:155)
[iajc] at org.aspectj.tools.ant.taskdefs.AjcTask.executeInSameVM(AjcTask.java:1047) [iajc] at org.aspectj.tools.ant.taskdefs.AjcTask.execute(AjcTask.java:904)
        [iajc] 	at org.apache.tools.ant.Task.perform(Task.java:341)
        [iajc] 	at org.apache.tools.ant.Target.execute(Target.java:309)
[iajc] at org.apache.tools.ant.Target.performTasks(Target.java:336) [iajc] at org.apache.tools.ant.Project.executeTarget(Project.java:1339) [iajc] at org.apache.tools.ant.Project.executeTargets(Project.java:1255) [iajc] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:569) [iajc] at org.eclipse.ant.internal.core.ant.InternalAntRunner.run(InternalAntRunner.java:367) [iajc] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [iajc] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [iajc] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        [iajc] 	at java.lang.reflect.Method.invoke(Method.java:324)
        [iajc] 	at org.eclipse.ant.core.AntRunner.run(AntRunner.java:335)
[iajc] at org.eclipse.ui.externaltools.internal.ant.launchConfigurations.AntLaunchDelegate$1.run(AntLaunchDelegate.java:172)
        [iajc] 	at java.lang.Thread.run(Thread.java:534)
        [iajc]
[iajc] BUILD FAILED: file:/root/java/ArchivedWorkspaces/AJContentServer/build.xml:29: fail due to VerifyError "(class: org/aspectj/ajdt/internal/compiler/lookup/AjLookupEnvironment, method: createBinaryTypeFrom signature: (Lorg/eclipse/jdt/internal/compiler/env/IBinaryType;Lorg/eclipse/jdt/internal/compiler/lookup/PackageBinding;Z)Lorg/eclipse/jdt/internal/compile""ABORT" (1 exceptions)
Total time: 4 seconds

The only new aspect that I could not test, has pointcuts in a binary jar that is in the classpath elements. I do have a src zip for those classes, do I need to put those in the sourceroots?

Ollie



Back to the top