在插件java项目中使用AspectJ

时间:2015-02-13 15:04:29

标签: java eclipse eclipse-plugin aspectj

我正在使用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");
}
}

感谢

1 个答案:

答案 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>

我希望这会有所帮助。

相关问题