мой вопрос связан с этим вопросом
У нас есть другой класс аспектов, который дает @around рекомендации для разных частей приложения (толстый клиент в Swing) для измерения времени выполнения.
У меня есть еще один аспект (ExceptionHandler), который делает @around для всех методов аспектов, которые я написал.
Я сделал это, чтобы избежать того, что созданные аспекты вызовут исключение и приведут к сбою клиентского приложения. В общем, я пытаюсь поймать Proceed моего другого метода @around и просто регистрирую возникающие исключения. Я выкидываю исключение только тогда, когда обнаруживаю, что оно исходит от исходной точки JoinPoint
if (joinPoint.getSignature().getDeclaringTypeName().equalsIgnoreCase("org.aspectj.lang.ProceedingJoinPoint")) {
throw exception;
}
Допустимо ли это делать?
В Eclipse с AJDT приложение работает нормально, и я протестировал 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 и есть ли метод !!!!!!! ???????????
Почему эта ошибка возникает ...?
Я невежественен.