我正在使用Eclipse,我正在尝试开发一个使用Aspects(Aspect J)的插件,但是我不能在Aspect J项目之外创建Aspects,即使我将Aspect J项目导入到插件一,任何解决方案?
例如,当我通过我的插件运行一些方法时,方面捕获每个void方法的跟踪,并打印一条简单的消息。
public aspect MyAspect {
pointcut test() : call(public void *());
before() : test() {
System.out.println("THIS advice code is executed before any call");
}
}
感谢
答案 0 :(得分:2)
在Eclipse中,似乎没有GUI选项来向项目添加自然,只是将项目转换为自然。但是,你需要AspectJ的本质。您可以像这样编辑项目文件,看看它是否有效。似乎至少。我试过很快,没有实际添加方面我编辑文件后打开的示例插件项目。不过,我看到了小“AJ”图标和与AspectJ相关的菜单条目。
我只是展示你需要添加什么。我想你不需要删除任何东西,只有<buildCommand>
的{{1}},因为在一个新的AspectJ项目中只有javabuilder
(它还编译普通的Java文件)。 / p>
<强> 的.project 强>
ajbuilder
<强> 的.classpath 强>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>...</name>
<!-- ... -->
<buildSpec>
<buildCommand>
<name>org.eclipse.ajdt.core.ajbuilder</name>
<arguments>
</arguments>
</buildCommand>
<!-- ... -->
</buildSpec>
<natures>
<nature>org.eclipse.ajdt.ui.ajnature</nature>
<!-- ... -->
</natures>
</projectDescription>
我希望这会有所帮助。