How to get AspectJ post-compilation weave debug output?

已回答

I have a project that uses AspectJ in compile-time weave mode. Sometimes AspectJ fails in the weave stage and IntelliJ's build output contains a message like, "Error:Module 'app_main' production: org.aspectj.bridge.AbortException: trouble in: com.xyz.SomeClassName".

Is there a way to get more verbose output so I can see what specifically is failing in these cases?

0
Avatar
Permanently deleted user

The build log has a stack trace but isn't much more informative regarding what actually happened:

2017-04-25 07:44:39,933 [ 167531] INFO - s.incremental.java.JavaBuilder - Compiling 21 java files; module: payment_main
2017-04-25 07:44:42,482 [ 170080] INFO - brains.jps.incremental.Builder - Dependency analysis found 0 affected files
2017-04-25 07:44:45,409 [ 173007] INFO - s.incremental.java.JavaBuilder - javac 1.8.0_111 was used to compile [payment_main]
2017-04-25 07:44:45,411 [ 173009]   INFO - .incremental.IncProjectBuilder - Module 'payment_main' production: org.aspectj.bridge.AbortException: trouble in:
com.thesegovia.payment.provider.AbstractSimpleInteractionSaga
org.jetbrains.jps.incremental.ProjectBuildException: Module 'payment_main' production: org.aspectj.bridge.AbortException: trouble in:
com.thesegovia.payment.provider.AbstractSimpleInteractionSaga
        at org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:1038)
        at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:903)
        at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:736)
        at org.jetbrains.jps.incremental.IncProjectBuilder.runBuild(IncProjectBuilder.java:384)
        at org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder.java:192)
        at org.jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:138)
        at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:295)
        at org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:125)
        at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler.lambda$channelRead0$0(BuildMain.java:236)
        at org.jetbrains.jps.service.impl.SharedThreadPoolImpl.lambda$executeOnPooledThread$0(SharedThreadPoolImpl.java:42)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
Caused by: org.aspectj.bridge.AbortException: trouble in:
com.thesegovia.payment.provider.AbstractSimpleInteractionSaga
        at org.aspectj.weaver.tools.WeavingAdaptor$WeavingAdaptorMessageHolder.handleMessage(WeavingAdaptor.java:730)
        at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1715)
        at org.aspectj.weaver.bcel.BcelWeaver.weaveWithoutDump(BcelWeaver.java:1633)
        at org.aspectj.weaver.bcel.BcelWeaver.weaveAndNotify(BcelWeaver.java:1398)
        at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1184)
        at org.aspectj.weaver.tools.WeavingAdaptor.getWovenBytes(WeavingAdaptor.java:527)
        at org.aspectj.weaver.tools.WeavingAdaptor.weaveClass(WeavingAdaptor.java:363)
        at org.aspectj.weaver.tools.WeavingAdaptor.weaveClass(WeavingAdaptor.java:285)
        at com.intellij.lang.aspectj.build.AjJpsWeaver$MyWeavingAdaptor.weaveClass(AjJpsWeaver.java:116)
        at com.intellij.lang.aspectj.build.AjJpsWeaver$MyWeavingAdaptor.weaveClasses(AjJpsWeaver.java:103)
        at com.intellij.lang.aspectj.build.AjJpsWeaver.build(AjJpsWeaver.java:65)
        at com.intellij.lang.aspectj.build.AjWeavingBuilder.doBuild(AjWeavingBuilder.java:47)
        at com.intellij.lang.aspectj.build.AjBuilderBase.build(AjBuilderBase.java:74)
        at org.jetbrains.jps.incremental.IncProjectBuilder.runModuleLevelBuilders(IncProjectBuilder.java:1263)
        at org.jetbrains.jps.incremental.IncProjectBuilder.runBuildersForChunk(IncProjectBuilder.java:940)
        at org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:1012)
        ... 14 more
2017-04-25 07:44:46,192 [ 0] INFO - etbrains.jps.cmdline.BuildMain - Build process started. Classpath: /Applications/IntelliJ IDEA.app/Contents/lib/jps-launcher.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/lib/tools.jar:/Applications/IntelliJ IDEA.app/Contents/lib/optimizedFileManager.jar
2017-04-25 07:44:46,503 [ 311] INFO - etbrains.jps.cmdline.BuildMain - Connection to IDE established in 254 ms

 

0

Do yo have "Settings | Build, Execution, Deployment | Compiler | Compile independent modules in parallel" option enabled?

0
Avatar
Permanently deleted user

I don't. I'll try enabling that and see if the error recurs. It is pretty intermittent and I haven't yet discovered a sequence of steps that will cause it to happen reliably, but it normally happens several times a day so I'll find out before long.

0

I thought weaving in parallel may be the reason...

Please replace plugins/aspectj/lib/aspectj-jps-plugin.jar with this file. When the issue happens again, please attach the build log to IDEA-171444.

0

请先登录再写评论。