先說辦法:如果Aspectweaver-1.*.*jar這三個包版本比較低,
比如1.5.0這一層次的,可以找版本高一點的包替換低版本的包,問題可以得到解決
jar包的下載地址:https://mvnrepository.com/artifact/org.aspectj
昨天晚上學AOP時,報題目中的錯誤,經過我百度還有谷歌,我看到一個比較"靠譜"的解決辦法,我深以為然,這個辦法解釋是因為jdk的版本不一致,我用的是jdk1.8,
說是要用1.7,然后,我知道開始了從昨天晚上到現在的debug之旅,在我換成1.7后,又報UnsupportedClassVersionError,然而我又查這個錯誤,結果告訴我是1.8編譯
的文件不能在1.7上跑,wtf...之后我覺得我從一開始就錯了,應該1.8是可以的,我估計是jar包的問題,然后查了一下和jdk1.8搭配的jar包
於是找到了這個博客
https://blog.csdn.net/haleyliu123/article/details/63268203
這博客里面提到三個包:
分別是Spring -AOP-4.3.7RELEASE.jar,Aspectjrt-1.8.6.jar,Aspectweaver-1.8.6.jar,經測試,對於我這種情況(jdk1.8)用這三個包是沒問題的
但是后來我想找找究竟是哪個包的問題
將Spring-AOP包換成5.0.1,程序一樣跑,沒問題
將Aspectjrt1.8.6換成高版本1.9.1,程序一樣pao,沒問題
將Aspectweaver換成原來的低版本1.5.3(我原來是用的這個版本),報標題中的錯
所以我估計這里的錯誤不是jdk的問題,而是Aspectweaver包的版本比較低,所以解決這個問題只要把包的版本升到較高版本就可以解決
但我不同的人的環境都不同,所以這個肯定不是唯一解,僅供參考
