Java 为什么我不能从行为实例中获取代理?

Java 为什么我不能从行为实例中获取代理?,java,aspectj,agents-jade,Java,Aspectj,Agents Jade,我在Eclipse中与JADE合作。我尝试使用一个方面来捕获每个执行行为的操作方法。它工作得很好,我甚至得到了执行行为的实例。但是,此实例不允许我获取添加此行为的代理。因为in behavior允许我们知道是哪个代理添加了这种行为。下面的图片显示了我的错误 谢谢。谢谢您没有更新问题,没有发布实际的错误消息,甚至没有从读者的视图中隐藏类的导入:-七, 无论如何:您发布的代码应该可以工作,对我来说,它在Eclipse中没有任何红色下划线。这里有两个用于切入点和建议的变体,一个是丑陋的类型转换和get

我在Eclipse中与JADE合作。我尝试使用一个方面来捕获每个执行行为的操作方法。它工作得很好,我甚至得到了执行行为的实例。但是,此实例不允许我获取添加此行为的代理。因为in behavior允许我们知道是哪个代理添加了这种行为。下面的图片显示了我的错误

谢谢。

谢谢您没有更新问题,没有发布实际的错误消息,甚至没有从读者的视图中隐藏类的导入:-七,

无论如何:您发布的代码应该可以工作,对我来说,它在Eclipse中没有任何红色下划线。这里有两个用于切入点和建议的变体,一个是丑陋的类型转换和getThis的使用,另一个是直接和类型安全参数绑定的优雅变体:

包de.scrum_master.aspect; 进口翡翠。核心。行为。行为; 公共方面行动方面{ 之前: 执行*行为.行动。。 { System.out.printlnthisJoinPoint; 行为=行为thisJoinPoint.getThis; 行为代理; } 行为前: 执行*行为.操作..&&ThisBehavior { System.out.printlnthisJoinPoint; 行为代理; } }
不,图片没有显示错误,只是代码中出现错误的地方。你介意通过引用准确的错误信息来更新问题吗?也许它已经解释了编译器的抱怨。但是,即使有了你的代码,我也会得到红色的下划线。请问你的翡翠版本是什么?!我有一个假设,版本是我的问题的根源你问我的细节,你太懒了,没有提供任何?!来吧先生,您先请。我正在等待。是的,我是对的,我发现了问题,jade v4.3.3在行为计算中提供getAgent非常感谢,先生,但现在我面临另一个问题,我将编辑问题,因此您在这里打开了一个问题,因为您试图调用一个不存在的方法。好的,没有进一步的评论。我恳请您接受我的回答,不要编辑您在4小时内未编辑的问题,因为后续问题可能与您无关。