在以前的Java Project中使用AJDT创建一个Aspect

时间:2013-08-11 18:18:03

标签: eclipse aspectj eclipse-kepler ajdt

我决定使用AOP处理Java项目中的问题,所以我在Eclipse Kepler中安装了AJDT 2.2.3。一切似乎工作正常,因为我可以创建一个新的AspectJ项目并创建方面,一切都按预期工作。各方面都按照我的预期正确编织和执行。之后我尝试将AspectJ集成到我现有的Java项目中。我使用Configure > Convert to AspectJ Project转换了它。仍然一切正常,但是当我使用创建方面向导实际创建此项目中的方面时,我遇到了以下错误消息: Creation of element failed. See error log for more details.我仍然可以完成向导,但创建的方面文件看起来与我在AspectJ项目中首次尝试时创建的方面文件不同。

File

如果我编辑创建的文件,那么在原始AspectJ项目中第一次尝试的相同方面似乎没有任何效果。

日志消息(省略之间的一些行):

java.lang.reflect.InvocationTargetException
    at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:421)
at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:1028)
at org.eclipse.jdt.internal.ui.wizards.NewElementWizard.performFinish(NewElementWizard.java:134)
...
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
Caused by: java.lang.NullPointerException
at org.eclipse.ajdt.internal.ui.wizards.AJNewTypeWizardPage.ajc$interMethod$org_eclipse_ajdt_internal_ui_wizards_AJNewTypeWizardPage$org_eclipse_ajdt_internal_ui_wizards_NewTypeWizardPage$createAJType(AJNewTypeWizardPage.aj:267)
at org.eclipse.ajdt.internal.ui.wizards.NewTypeWizardPage.ajc$interMethodDispatch2$org_eclipse_ajdt_internal_ui_wizards_AJNewTypeWizardPage$createAJType(NewTypeWizardPage.java:1)
at org.eclipse.ajdt.internal.ui.wizards.AJNewTypeWizardPage.ajc$interMethodDispatch1$org_eclipse_ajdt_internal_ui_wizards_AJNewTypeWizardPage$org_eclipse_ajdt_internal_ui_wizards_NewTypeWizardPage$createAJType(AJNewTypeWizardPage.aj)
...
org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:728)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2345)
at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:5331)
at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:106)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)

有人知道这个错误想告诉我什么以及我可以做些什么来使用我项目中的方面?

1 个答案:

答案 0 :(得分:0)

不适用于Kepler,但是在Oxygen上遇到了类似的问题。创建了一个Java项目,将其转换为AspectJ,后来又转换为Maven只是遇到了上述问题。报废它,创建一个新的Maven项目并将其转换为AspectJ。可行。