我的問題是有關this question是否有可能有各地的其他方面
我們有不同方面的類上的應用程序(在Swing胖客戶端)的不同部分做@Around建議一個方面來衡量的執行時間。
我有另一個方面(ExceptionHandler)在我寫的所有方面的方法做@around。
我這樣做是爲了避免創建的方面會拋出異常並使客戶端應用程序失敗。所以基本上,我試着抓住繼續我的其他@around方法,並只記錄出現的異常。我只是拋出一個例外,當我發現它來自進程加入點
if (joinPoint.getSignature().getDeclaringTypeName().equalsIgnoreCase("org.aspectj.lang.ProceedingJoinPoint")) {
throw exception;
}
這是否有效?
在帶AJDT的Eclipse中,應用程序運行正常,我測試了ExceptionHandler並且它按預期工作。
但在其他環境。 (集成),應用程序就會失敗,因爲它滿足了exceptionHandler的建議一條線,此錯誤
Exception in thread "main" java.lang.NoSuchMethodError: com.xxx.yyy.aop.aspect.ExceptionHandlerAspect.aspect
Of()Lcom/xxx/yyy/aop/aspect/ExceptionHandlerAspect;
at com.xxx.yyy.aop.aspect.ecs.AspectBaseEcs.inspectLoginInfo(AspectBaseEcs.java:65)
at com.xxx.yyy.app.es.security.Security.loadApplications(Security.java:172)
at com.xxx.yyy.app.es.gui.VSDlgLogin.loadSecurity(VSDlgLogin.java:346)
at com.xxx.yyy.app.es.ApplicationSuite.start(ApplicationSuite.java:839)
at com.xxx.yyy.app.es.ApplicationSuite.main(ApplicationSuite.java:501)
我也反編譯代碼,看是否aspectOf()被編織成我的ExceptionHandler和方法是存在的! !!!!!! ???????????
爲什麼這個錯誤會上升......?
我很無能。