为aspectj运行JDK8

我正在尝试使用JDK8运行aspectj-maven插件。 但它给出的错误如“java.lang.CharSequence类型无法解析。它是从所需的.class文件间接引用的”

有关如何解决的任何帮助,或者aspectj-maven-plugin是否支持JDK8。 我正在使用1.6版本的aspectj – maven-plugin。

我必须达到同样的目的,我疯狂地想弄清楚这一点,幸运的是我可以解决它,在这里我告诉你我做了什么:

要在Java 8中使用aspectj-maven-plugin ,您需要版本aspectj-maven-plugin 1.7(请注意,aspectj-maven-plugin 1.6适用于Java 7)。

因此,maven插件配置需要:

    org.codehaus.mojo aspectj-maven-plugin 1.7-SNAPSHOT  1.8 1.8 1.8     compile test-compile     

顺便说一句,所需的aspectJjar子是:

    org.aspectj aspectjrt 1.8.1   org.springframework spring-aop 1.8.1   org.aspectj aspectjweaver 1.8.1  

我遇到的最重要的事情是你需要手动将aspectj-maven-plugin 1.7 jar安装到你的pom.xml中,因为这个jar还没有在maven repo上。

你可以从Haus Jira那里得到它(查看附件部分):

 https://jira.codehaus.org/browse/MASPECTJ-131 

顺便说一下,一旦你下载它复制到你的仓库,你需要在相应的目录中创建自己的 aspectj-maven-plugin-1.7-SNAPSHOT.pom文件。 您可以从1.6版本复制它但请确保修改以下内容:

  1.7-SNAPSHOT  1.8.1 2.2.1 2.9  

这就是你去的地方,希望能帮到你。

你不需要1.7-SNAPSHOT。 我在POM中有这个片段,一切正常:

  org.codehaus.mojo aspectj-maven-plugin 1.5    compile     1.8 1.8 1.8 true    org.aspectj aspectjrt 1.8.1   org.aspectj aspectjtools 1.8.1    

解决此问题的另一种方法是将JDK级别降级到1.7。 JDK 1.7适用于版本1.4 – 1.6的aspectj-maven-plugin。

以下是显示如何在IntelliJ IDEA项目中更改JDK级别的屏幕截图:

在此处输入图像描述

将Project SDK设置为1.7。 有关详细信息,请参阅文档